`persistence.js` is an asynchronous Javascript object-database mapper. It has database-independent abstractions and can therefore easily be ported to new databases. Originally the library was designed to be used in the browser, utilizing its [HTML5 WebSQL database](http://dev.w3.org/html5/webdatabase/), since then it has grown into a library that can be used in essentially every Javascript environment, including server-side Javascript environments such as [node.js](http://nodejs.org) and [RingoJS](http://ringojs.org). * [Download](http://github.com/zefhemel/persistencejs) * [Using with GWT](https://github.com/dennisjzh/GwtMobile-Persistence) * [Who uses it?](/users) Documentation ---------------- * [What is asynchronous programming?](async) * Setup `persistence.js`: * [Browser-use](/browser/setup) * [Node.js](/node/setup) (MySQL, SQLite) * [RingoJS](/ringo/setup) (AppEngine data store) * [Defining your data model](/schema) * [Manipulating and persisting objects](/objects) * [Querying data](/query) Database store specific notes: * [Browser](/stores/browser) * [In-memory/localStorage](/stores/memory) * [Titanium](/stores/titanium) * [MySQL on Node.js](/stores/mysql-node) * [SQLite on Node.js](/stores/sqlite-node) * [AppEngine on RingoJS](/stores/appengine-ringo) Plug-ins -------- There are a few `persistence.js` plug-ins available that add functionality: * [persistence.search.js](/plugin/search), adds simple full-text search capabilities. * [persistence.migrations.js](/plugin/migrations), supports data migrations (changes to the database schema). * [persistence.sync.js](/plugin/sync), supports database synchronization with a remote server. * [persistence.jquery.js](/plugin/jquery), adds jQuery integration, including jQuery-mobile ajax request interception. * [persistence.jquery.mobile.js](/plugin/jquery-mobile), adds jQuery mobile support, including jQuery-mobile ajax request interception and re-routing to persistence.js. Support ------- If you find a bug, please [report it](https://github.com/zefhemel/persistencejs/issues). Or fork the project, fix the problem and send me a pull request. For a list of planned features and open issues, have a look at the [issue tracker](https://github.com/zefhemel/persistencejs/issues). For support and discussion, please join the [persistence.js Google Group](http://groups.google.com/group/persistencejs). Thanks goes to all [authors](https://github.com/zefhemel/persistencejs/blob/master/AUTHORS) for their contributions. License ------- This work is licensed under the [MIT license](http://en.wikipedia.org/wiki/MIT_License). Support this work ----------------- You can support this project by flattering it: