I'm interested in starting an Open Source project that could be packaged as a desktop application for non-technical end users, but would run in the browser - one existing model would be Google Refine. I'm looking for an existing, Open-Source framework that would support this - not the UI portion, but the lower-level application framework, including:
I'm hoping to find a framework that sets up a significant amount of this for me, the way that Django sets up web applications - not just a technology that would support writing this framework myself.
My ideal framework would be cross-platform and cross-browser, and would be written in either Python, Java, or Javascript (running on node.js or something similar). Does a framework like this exist?
You should be able to build a desktop app that runs in the browser using web2py. Web2py requires no installation or configuration, has no dependencies, and includes a built-in web server and the SQLite RDBMS (as well as a database abstraction layer). The Windows and Mac binaries even include the Python interpreter, so no need to install Python (you can even run it off a thumb drive). You can pack your application with a web2py distribution, and your users will simply have to unzip it, click a single file to start it, and your app will launch in their browser. You can even distribute your applications as binaries, as explained here.
The documentation is excellent, and if you have any questions, there's a very helpful and responsive mailing list.
If you want to start playing with it, just download it, unzip it, and click the web2py.exe (Windows) or web2py.app (Mac) file -- that will launch the "welcome" (scaffolding) app in your browser. If there's something it's lacking that would be helpful for your use case, ask on the list -- if the change is easy and useful, it will probably get added.
Take a look at PyJavascriptCore and the PyGTK Webkit implementation which will let you make an application in HTML, CSS, and Javascript. For the backend you can either use Python since with PyJavascriptCore you can call Javascript functions from Python and vice versa, or you can combine with a WSGI framework like Flask to do Ajax calls to the app's local server.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With