

PouchDB: A browser database that syncs with CouchDB - dscape
http://pouchdb.com/

======
sktrdie
This is a truly powerful thing, especially for mobile web-apps where you need
to constantly synch with a central server.

Also, native mobile apps using WebKit don't need to embed CouchDB in their app
anymore - they simply use PouchDB to synch with their couches.

Not to mention the benefits this could bring to desktop development. All you
virtually need is a WebKit instance to build a truly scalable desktop
application that uses open standards for most of its components - HTML5/CSS3
for interface and a Couch API for storage.

Really awesome! Keep up the good work.

~~~
daleharvey
Thanks for that comment, its awesome that people see the exact same potential
as I do in this model.

~~~
greendestiny
I think local storage in web apps with sync could be a big deal in the future.
Probably for mobile html5 apps in particular but also for the desktop. Great
work!

------
tectonic
Syncing complex data from offline storage to a hosted backend is hard,
especially if the data can change in both places at once. If this solves that
problem, it could be very useful.

~~~
damncabbage
I looked into this a month ago, and it didn't appear to be there yet:
<https://github.com/daleharvey/pouchdb/issues/25>

(The issue is currently open, but it looks as if it may land shortly.)

~~~
daleharvey
The data syncing is there, that bug is related to a particular issue of
communicating with external hosts

If your app and your CouchDB instance are on the same host (either with a
proxy or couchapps) then there is no issue, if the CouchDB instance you want
to sync with is on a seperate host then you need to add CORS headers to data
served from couch, this is a few lines change in nginx, I run a local proxy
for development because its just more convenient

------
sidchilling
Can it be used with some other database like MySQL? I mean the main database
is MySQL and in the offline mode PouchDB can collect data.

Also, what about security of the main database? How does the syncing take
place?

~~~
daleharvey
CouchDB has a plugin based auth system, with in built support for http /
cookie / oauth, so its a matter of only allowing access to a database against
an authenticated client, it can all go over https of course.

Its possible / in the plans to use on top of sqllite (and thus mysql), but it
wouldnt be possible to use in the way you invisage, PouchDB + CouchDB allow
you to sync data due to its data model and api, you wont be able to sync data
out of your current application written with rdbms in mind and have it 'just
work'

