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. It is also capable of connecting and syncing data with a person's Dropbox, Google Drive or Solid account (optional).
The library is well-tested and actively maintained. It is safe to use in production.
- See remotestorage.io for general information about the remoteStorage protocol
- Read the docs (source files in
docs/
) - Ask questions on the community forums
- If you found a potential bug, or want to propose a change, open an issue on GitHub. New issues will usually receive a response within 24-48 hours.
To develop remoteStorage-enabled apps, you need to have a remoteStorage-compatible storage account. We recommend php-remote-storage (PHP), or armadietto (node.js), or mysteryshack (Rust) for running a local test server, or for self-hosting an RS server.
You can also get an account with a hoster, or use another remoteStorage server implementation: Servers.
If you'd like a visual UI for inspecting any RS-compatible account, you can use the RS Inspektor app (which is also implemented using this library).
remoteStorage.js is a grassroots project, developed by the community, for the community. We'd be happy to count you among the many people who contributed to the project so far!
Read our Contributing docs to get started.
We adhere to Semantic Versioning. This means that
breaking changes will result in a new major version. With npm, you can make
sure to only automatically upgrade to API-compatible versions by using either
the ^
prefix, or x
as indicator for flexible numbers:
"devDependencies": {
"remotestoragejs": "1.x" // same as "^1.0.0"
}
Original authors: Niklas Cathor, Michiel de Jong
Previously sponsored by NLnet