as per a meeting on 12/16/11 with @caolanm, @mikeal, @tilgovi, @jchris and myself here is a rough summary of what we as the couchapp stewards discussed:
-
there was agreement that the major goal of couchapps (in general) is to offer a convention for building HTML5 applications that are independent of and transportable (isomorphic?) between databases. therefore the platforms onto which you can deploy a couchapp are very important as a selling point. the more the merrier
-
the deploy targets we discussed are: chrome extensions, ios + android with couchbase's stuff, phonegap, and desktop apps with Chrome Embedded Framework
-
there was contention over whether or not its a good idea to port the erlang VM to run erlang couch on all the things. now that chrome ships with leveldb turned on we think it would be awesome to get https://github.com/mikeal/pouchdb to a 1.0 release. for the first release you won't be able to store binary attachments in pouch (although once http://t.co/0fj35mFs lands in Chrome this will be a lot easier). we are shooting for pouch to support persistent data storage and a erlang-couch compatible replicator. @tilgovi is actively working towards these goals. go @tilgovi!
-
seeing as how chrome has a more mature indexeddb implementation and a more mature browser extension framework we are officially recognizing chrome extensions as couchapp deploy targets and would like to build tools to help developers deploy to both couchdb and chrome using the same codebase.
-
kansojs (http://kan.so) by @caolanm features an awesome couchapp module system inspired by node.js' http://npmjs.org. you can publish bits of your couchapp (one example: logic to export any couchdb as a CSV) so that others can require them as dependencies in their design documents. kanso already supports pushing from python-couchapp, node-couchapp and reupholster which is a feat worthy of great applause since they all have different folder structures. in short, kanso is awesome
-
i have been doing a lot of work with the apache/nitobi/adobe phonegap/callback/cordoba project and would also one day like to officially support phonegap as a couchapp deployment target
@brianleroux cache manifest is unusable for couchapps right now because it is so limited. there isn't a usable HTML5 spec that allows us to use the web browser as a file server to serve applications and make cross domain replication requests, but chrome extensions support all of that stuff. @autonome it's not firefox's indexeddb implementation holding back couchapps as much as open web apps/html5 extension support. i'm eagerly waiting for it to catch up in terms of the flexibility offered by chrome extensions.