remoteStorage.js is a JavaScript library for storing user data locally in the browser, as well as connecting to remoteStorage servers and syncing data across devices and applications.
- Use the remoteStorage.js API docs
- See remotestorage.io for documentation, community forums, and links
- Get instant support via IRC in #remotestorage on Freenode
To develop remoteStorage-enabled apps, you need to have a remoteStorage-compatible storage account. We recommend php-remote-storage (PHP) or mysteryshack (Rust) for running a local test server.
You can also get an account with a hoster, or use one of the various other remoteStorage server implementations: Servers.
You can either use a stable release or the current HEAD build. Stable releases
can be found in release/.
Directories with a -rcX suffix contain release candidates, which may be used
for testing but aren't necessarily "stable" releases.
release/head
contains a semi-current HEAD build. It is updated manually and irregularly. To
build an up-to-date version of all files, run make all in the repository
root.
There are a number of different builds available:
- remotestorage.js - Contains all components of remotestorage.js for running in a browser.
- remotestorage.amd.js - The same as remotestorage.js, but wrapped for use with AMD loaders such as RequireJS. When using AMD, be aware of issues #709.
- remotestorage.min.js - Minified version of remotestorage.js
- remotestorage-nocache.js - A version without any caching features included. Use this if you want your app to write directly to the remote server without caching any data in the browser's storage (localStorage or IndexedDB).
- remotestorage-nocache.amd.js, remotestorage-nocache.min.js - same as the other .amd/.min build, but based on remotestorage-nocache.js.
For more information on using the AMD build(s) and its dependencies, see the AMD documentation.
$ bower install -S remotestorage
$ npm install remotestoragejs
See our node.js documentation for more details.
Install development dependencies including the testing framework:
$ npm install
Run all tests:
$ npm test
Note: deliberate exceptions may look like errors, but if it says "all tests passed" under the test output all is well for that test.
Use the jaribu executable in order to test single files, like so e.g.:
$ node_modules/.bin/jaribu test/unit/baseclient-suite.js
Make sure you have Natural Docs installed on
your system (e.g. via sudo apt-get install naturaldocs).
Display the available build tasks:
$ make
Build everything:
$ make all
Original authors: Niklas Cathor, Michiel de Jong
Sponsored by NLnet