Home - remoteStorage
source link: https://remotestorage.io/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
remoteStorage
Open protocol for per-user storage on the WebFeatures
For users
Own your data
Everything in one place – your place. Use a storage account with a provider you trust, or set up your own storage server. Move house whenever you want. It’s your data.
Stay in sync
remoteStorage-enabled apps automatically sync your data across all of your devices, from desktop to tablet to smartphone, and maybe even your TV.
Compatibility & choice
Use the same data across different apps. Create a to-do list in one app, and track the time on your tasks in another one. Say goodbye to app-specific data silos.
Go offline
Most remoteStorage-enabled apps come with first-class offline support. Use your apps offline on the go, and automatically sync when you’re back online.
For developers
Backend as a Service
Develop your web app without worrying about hosting or even developing the backend for it: your users will connect their own backend at runtime.
Infinite Scalability
No matter if 5 hundred or 5 million users are using your app, your backend scales automatically and never costs you a single cent.
Wheels Included
remoteStorage.js is a JavaScript library that does all the heavy-lifting of connecting to any remoteStorage backend, caching, synchronizing and storing user data.
Developer library
The remoteStorage.js library does most of the heavy lifting to add offline storage and cross-device synchronization to your apps. No more worrying about accounts, databases, passwords…
Setup
const rs = new RemoteStorage();
rs.access.claim('todos', 'rw');
rs.caching.enable();
const client = rs.scope('/todos/');
Write an object
// Declare an object type to validate if you want (JSON Schema)
client.declareType('todo-item', {});
// Write `{"id":"alfa","done":false}` to /todos/alfa.json
await client.storeObject('todo-item', 'alfa.json', {
id: 'alfa',
done: false,
});
Get objects
const specificItem = await client.getObject('alpha.json');
const allTodoItems = await client.getAll();
Add the Connect Widget UI component
Use our drop-in UI widget for connecting remote storage accounts.
const widget = new Widget(rs);
widget.attach();
Read the documentation Protocol details
Community
remoteStorage is a grass-roots standard, developed completely in the open, by the community for the community. Countless individuals have contributed in one way or another over time, and we’d love to welcome you as one of them!
We would love for you to get involved — check out What can I do for remoteStorage? for some ideas.
Thank you to our contributors!
… and everyone not listed here!
Sponsors
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK