U1DB is a database API for synchronised databases of JSON documents. It’s simple to use in applications, and allows apps to store documents and synchronise them between machines and devices. U1DB is the database designed to work everywhere, backed by the platform’s native data storage capabilities. This means that you can use u1db on different platforms, from different languages, and backed on to different databases, and sync between all of them.
The API for U1DB looks similar across all different implementations. This API is described at The high-level API. To actually use U1DB you’ll need an implementation; a version of U1DB made available on your choice of platform, in your choice of language, and on your choice of backend database.
If you’re interested in using U1DB in an application, look at The high-level API first, and then choose one of the Implementations and read about exactly how the U1DB API is made available in that implementation. Get going quickly with the Downloads and Quickstart guide.
Choose the implementation you need and get hacking!
|Platform(s)||Language||Back end database||link|
|Ubuntu, Windows, OS X||Python||SQLite||The reference implementation|
|Ubuntu, Windows, OS X||C||SQLite||part of lp:u1db|
|Ubuntu, Windows, OS X||Go||LevelDB and/or MongoDB||lp:gouda (in progress)|