As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
To learn from good examples, what are the best open source Google App Engine applications out there?
I don't care if it is Java or Python based.
Please one app per answer. Feel free to add a link to the live app (if there is) and to the project page.
Rietveld of course
I dearly love my App Engine Console. It is a mini-app, a "plug-in" for other applications. It gives you an AJAX Python interpreter that runs on the server—great for development and debugging. Sometimes I use cURL pointed at App Engine Console to run (authenticated) one-off remote Python procedure calls.
(I wrote it, yes, but I use it daily for maintenance of busy sites. It's the first tool I install on new projects and I don't know how I could live without it.)
UserInfuser, a gamification platform: http://code.google.com/p/userinfuser and https://github.com/nlake44/UserInfuser
It can help you add gamification elements to your website (badges and leaderboards). It uses the Channel API for badge notifications.
Khan Academy. One of App Engine's bigger customers.
https://khanacademy.kilnhg.com/Repo/Website/Group/stable/Files
JaikuEngine is probably Google's biggest open source App Engine project.
I really like FoFou which is a simple forum software that I have used.
FoFou is open source and hosted on github.
Partychapp is a Java GAE app using the XMPP services to allow users to create and join chatrooms together.
I really like Bloog, a simple blogging application. Source is on github.
OpenShare (http://openshare.emotionull.com)
http://bitbucket.org/jonromero/openshare/src/
Eezee MVC is An Easy Model, View, Controller Framework for Google App Engine.
Features
Has a Controller Class that does routing, handling and rendering templates.
Your controllers reside in the controllers folder, views (html Django templates) in views folder, models in models folder.
Allows Controller to recieve GET/POST parameters as function arguments.
StackPrinter is a webapp that allows printing of StackOverflow's questions in a Printer-Friendly way.
Source code is on github.
Pubsubhubbub: A simple, open, server-to-server web-hook-based pubsub (publish/subscribe) protocol as an extension to Atom and RSS.
http://code.google.com/p/pubsubhubbub/
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I love Java like hell. This is not my 'native' language in work and I do Java projects from time to time after work. I have used only few technologies with Java like communication via raw sockets and Swing. Once in the past I run the Apache-Tomcat with very simple JSP generated page. Really basic stuff.
Some time ago I was interviewed to participate in more commercial Java project. It was a web-service based on browser content/application... I heard words like 'JSON', 'GWT', 'AJAX', 'XML' and I was lost in answers. ... I suggested java Applets+Swing, but they wasn't interested. I realized I have extremely limited knowledge about web technologies. I looked very bad on this interview.
If I am not a JavaScript guy, can I really do web-apps with pure Java? I mean web pages with dynamic-fancy-elements which are I think provided mostly by the JavaScript. What technologies should I get to know? Can be JavaScript generated from Java code?
I'll make this a CW answer, because the question isn't a fit for Stack Overflow's "one right answer" format.
Yes, you can write browser applications without knowing JavaScript. One way to do that is to use the Google Web Toolkit. (Amusingly, this was one of the acronyms you heard but didn't know — GWT.)
Why we need Javascript?
to reduce load on the server, by doing things like input validations before submitting the data to server.
Can all this be done without Javascript?
Yes, you can have plain HTML and do all the validation from your Java code
Is it good idea?
No its not. By doing so, you are loading the server for simple tasks such as input validations which can be easily accomplished by Javascripts.
I don't know Javascript. With ONLY Java can I get rich web-app?
Yes, GWT is google's tool which allows you to achieve the same. GWT gives you Eclipse plugins to manager the GWT web-apps and it allows you to write plain Java code (absolutely no Javascript) and in the backgroud coverts them into Javascript, so that the rich UI is created with most of the UI event handling in the browser itself.
From someone who has Java as their go too language, develops web applications and doesn't particularly like JavaScript I'd say... just learn JavaScript. Sure it's not a very nice language (IMHO) but it's absolutely essentially now-a-days. JavaScript appears just about everywhere now from JavaFX to web services (e.g. JSON) to web applications. Java has a JavaScript engine in Rhino and is getting a new one in Java 8 called Nashorn so I'd expect to see more JavaScript not less.
In direct answer to your question, yes, you could write a web application without knowing any JavaScript but before long you'll find a situation where you have to hack on some JS or debug it and then you'll kick yourself for not having learnt it from the start.
To give a short answer, Yes you can but then the Javascript will be generated for you. There are many frameworks that will generate the Javascript for you. Maybe you should look at Vaadin if you don't like writting javascript at all.
On most projects there is no need for writting javascript on scratch. 99% of time we use jQuery or plugins based on those. Maybe you should have a look at the Twitter bootstrap.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I've been looking into using zk for my upcoming Java web project, but am a little skeptical because as awesome as it seems, it has an expensive licensed edition as well as a free open source edition.
I could only use ZK Open Source edition but need the "write once, run anywhere" functionality (otherwise I will probably go with GWT/Phonegap).
On their feature comparison page, they don't mention write once/run anywhere, so I'm wondering if any battle-weary ZK veterans can weigh-in on whether this feature runs on the free version or not, and how well.
I need to support all web browsers, mobile web, all Android devices (including Nook/Kindle), all iOS devices, Microsoft devices (Surface, etc.) and Blackberry.
Also, if the free/open source edition does support this feature, how does it work? Nothing in the tutorials seems to indicate how it generates native executables for the various platforms in addition to a WAR...
No.
ZK only builds Java web archive files (war), it does not build native applications for Android, iOS, Nook, Kindle, or even stand alone applications for the desktop.
ZK web applications only run in a Java application server like Tomcat, JBoss, Jetty, Glassfish, etc.
In this sense, ZK is very similar to GWT and very disimilar to PhoneGap.
With PhoneGap you build phone applications using HTML, CSS, and JavaScript. Your application is then displayed inside a native wrapper compiled for each phone platform. This is not intended for the web, per se.
With GWT you build web applications in Java code. Some of this Java code actually gets compiled into JavaScript so it can run on the client side when appropriate, offering performance advantages if used well. Writing JavaScript code as Java has the advantage of going through the Java compiler for type safety and the like.
With ZK you build web applications in Java code. Unlike GWT, this never becomes JavaScript - all your Java code runs on the server. ZK handles setting up the AJAX calls.
Programming in ZK feels as though you have a copy of the DOM as Java objects. ZK deals with initializing your Controller for a particular View and you can ask it to wire up any Component from the view. You then have those Components as objects and any changes you make are immediately (more or less) reflected on the client.
Now, ZK aside..
If you want to write code once to run on all web browsers as well as on all phones, the only option is to write a web application. At the curent state of technology, you will not be able to get native executables for all phones and a get a web application from the same code base. If you develop a web application (using ZK, GWT, IceFaces, Lift, Grails, whatever) you can expect the maximum penetration into the market as almost all devices have a web browser.
Finally, some personal opinions on ZK..
The development cycle is fantastic, I love programming with ZK.
The team and community is great also, lots of momentum.
The framework is actively evolving, new core features and improvements all the time.
I'm not sure how it would stack up against the others under heavy load.
The DOM they generate is very heavy
There is a lot of chatter between the client and server
Edit:
PS: I found this old reference to something called ZK Mobile which I think is now a dead project. My impression is that it was probably aiming to be something similar to PhoneGap in that it would just wrap your ZK website in a native Android application. Everything would still work over the internet but the user would have an icon on their phone. You wouldn't have access to any native functionality like alarms or the like.
Anyway, just thought I'd put it here for the sake of completeness.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm developing an Android application and I would really like to deploy it for the iPhone as well.
However, I do not know Objective-C and I think it would take an annoyingly long time to figure that and the Apple framework out.
Is there a recommended way to port an Android application to iOS? Would the best bet be to hire a freelancer?
On the run now (home time ;-) ), so my answer will be concise (sorry)
Take a look at/Google (in no particular order):
MoSync <- Compiles C++ native apps to several mobile platforms, including Android and IOS, GPL for non-commercial projects.
AirplaySDK: Similar to MoSync, mainly commercial, has some free licensing for one of the 2 environments you're after (believe that's IOS, please verify yourself). Has been used comercially by Konami, Activision etc.
OpenFrameworks (OF) - Collections of C++ 'wrapper' code which enables unified cross-platform development of Audio/Visual projects (could be used for Games etc). The Android port is beta, see Android/Eclipse/OF Installation and the Android port's GitHub repository/developer (branch 0062_Android). The iPhone-specific code is quite complete (accelerometer access, etc. etc.).
XMLVM - It allows some level of porting from Java to a native IOS executable. Not sure how far forward this project is, and you might need to implement some of their framework classes (relatively trivial if you've got good separation of your existing Java libs).
Personally, I'm looking at OpenFrameworks right now, mainly as I like the 'One API' concept and I'm avoiding Objective-C for the moment (Want to ease myself in, I'm a Java/C# dev).
Edit: Notice that since this answer was written XMLVM development has stopped. Also Codename One came out in the interim and provides a path for Java developers.
Cheers
Rich
Your best bet for X-plat is HTML 5.
You will not be able to automagically port your native code because Android and iPhone use completely different patterns for developing all aspects of "the app".
Right now I've only seen MonoTouch (now Xamarin) available for cross platform development, which allows you to develop in .NET targetting the iPhone.
I have not seen a similar product for Android, but would a .NET based conversion process be feasible? The pricing is not outrageous.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I would like to start using Google App Engine for java. But i don't know, where to start.
Is the tutorial provided by google [ http://code.google.com/appengine/docs/java/overview.html ] enough ?
Also, please mention some good books on GAE [ java ] so that i can download those from rapidshare or torrent buy those books and start reading them.
Have a look at "Programming Google App Engine" by Dan Sanderson (O'Reilly). That is for Python or Java.
Google GAE-Java doc/tutorial is good enough.
There's a book by Apress "Beginning Java Google App Engine" that discussed specifically Java, GWT, JDO. I skimmed over it once while I was in my local bookstore and to be honest, you'll get the same amount of exposure to that of Google's doc/tutorial with extra commentary.
I prefer the straightforward (Google's) approach than the Apress.
Few things to mention:
Google's tutorial/doc directed you to what some people might considered the "preferred" approach (using JDO instead of JPA) and explanations to why.
AFAIK, Apress book doesn't teach you how to unit-test GAE-Java app (especially code that relies on GAE services)
Sometime the Apress book would tell you to go to Google's tutorial (e.g.: how to implement paging)
Apress book is good only if you want to know how to integrate GAE project with other libraries like GWT, Spring, and Flex (not even Wicket). But these are just configuration issues that you can Google it.
Hope this help.
Ed
I'm currently reading Beginning Java Google App Engine from Apress. I think it's a good start for beginning with java on the app engine. The book also implement a project with GWT. The book give you more organized information then the getting started. Here what you'll learn:
How to get up and running with App Engine, starting with the Google Plugin for Eclipse
All about the development server for testing and developing your applications
How to develop applications using Servlets & JSPs, Spring Framework, and open source Flash - - Remoting and Messaging servers
How to leverage the datastore in your applications, including Persistence as a Service
How to use Spring as a Service for transactions, data access, and more
How to use Google Web Toolkit to create AJAX components to drive your web applications
How to send email and instant messages (XMPP) from within your application
How to increase performance of your apps by storing data in memory using the Memcache service
I found Dan Sanderson's book on GAE very immersive and thoughtful. His treatment of the topic is in-depth and goes beyond hello world programs. I recommend this book for all those who want to learn GAE in Java in depth.
OTOH I found Beginning Java Google App Engine from Apress disappointing. I could not find anything in this book which I could not gather from Google I/O and Google articles.
Try to find the best price you can, or get it used. Things are changing rapidly with GAE.
The tutorial was sufficient to get me started. I learned App Engine via the tutorials back before there were any books out.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm looking for an e-commerce "platform" in Java or .NET that can satisfy the following requirements:
Product / Service Management
Customer Account Management
Shopping Cart
Checkout / Merchant Integration
Localization (especially for currency)
Coupons
Multiple Storefronts
Reporting
Possible PayPal / Google Checkout Integration
The goal here is to integrate this with a RIA written in Adobe Flex. We are comfortable with writing a thin backend layer to support the Flex app, so the solution doesn't require a remotely-accessible API, rather just one that we can invoke from our own backend code.
I used ofbiz for some projects, a joyful experience. It's now under the apache umbrella: http://ofbiz.apache.org/
From the website:
The Apache Open For Business Project
is an open source enterprise
automation software project licensed
under the Apache License Version 2.0.
By open source enterprise automation
we mean: Open Source ERP, Open Source
CRM, Open Source E-Business /
E-Commerce, Open Source SCM, Open
Source MRP, Open Source CMMS/EAM, and
so on
I used it to build an ecommerce application to sell customized products to consumers. I used the webshop part, the production planning and warehouse management.
Beware that it takes some time to dig into this huge framework but depending on your actual needs it will be worth it. There is also decent commercial support by a lot of service providers.
Look at nopCommerce - http://www.nopCommerce.com
Broadleaf Commerce... It's free, open source, and enterprise-class. Version 2.0 is simple to set up and configure out of the box. It also allows you to customize, extend, and integrate in absolutely any way that you need. We were able to get a complex, highly customized site with a large number of custom features, including flash sales and perishable inventory, deployed to production in 6 weeks. http://www.broadleafcommerce.com
SoftSlate Commerce meets nearly all of those requirements (with the exception of multiple storefronts, but you could run separate instances side by side). Full Java source code comes with the $495 Standard Edition license.
we do java development and are using shopizer it is a sales management software and also supports online invoicing
The Beerhouse (OS) for .NET might be worth a look. It's an ASP.NET starter kit, however there is also a paypal commerce kit that accompanies it. I'm not sure about coupons and flex integration however.
All the kits can be found here.
Websphere Commerce Supports almost all of your requirements(except paypal integration).
I tested and trust those (.Net):
aspdotnetstorefront
nopcommerce
Asp.net E-Commerce post and about java my favorite is http://www.konakart.com/
Freeblisket/Weblisket
Both platforms good for what you are looking.
Decision is based on personal preferences and which platform you have experience.