/remotestorage.js

JavaScript client library to connect to a remoteStorage server.

Primary LanguageJavaScriptMIT LicenseMIT

remoteStorage.js

Build Status devDependency Status Code Climate

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.

Where to get help?

  • See remotestorage.io for documentation, community forums, and links
  • Get instant support via IRC in #remotestorage on Freenode

Running a local test server

To develop remoteStorage-enabled apps, you need to have a remoteStorage-compatible storage account. We recommend reStore for running a local test server. (Use the latest version from GitHub, not npm!)

You can also get an account with a hoster, or use one of the various other remoteStorage server implementations: get storage.

Which version to choose?

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.

Which build file to use for my app?

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.
  • remotestorage.min.js - Minified version of remotestorage.js
  • remotestorage-nocache.js - Contains a version of remotestorage.js 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.

Running tests

Install development dependencies including the testing framework:

npm install

Run all suites:

npm test

Use the teste executable in order to test single files, like so e.g.:

node_modules/.bin/teste test/unit/baseclient-suite.js

How to build

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