Ask HN: Remote Storage Client API Idea. Any Thoughts?
This is a project to encourage data freedom - separating who is supplying your web app with who is storing the data. The data storage could be Dropbox, Google Drive, Your local HDD (with a browser extension), a self-hosted storage, IPFS maybe etc.
This will also encourage and perpetuate use of FOSS on the cloud - because you can use a suite of FOSS applications, e.g. a todo list, a calendar, a text editor, a code editor, and link them all to your preferred storage solution, which itself could be FOSS or Propitiatory. It also lowers the bar for app developers who no longer need to run a server at their own expense and risk.
This will be achieved by exposing a simple client-side JavaScript API for storing data remotely.
This API would let the developer of an app, e.g. a text editor say, call this to save data, open data and discover what data can be opened. The app doesn't care about how the data is stored. It would be similar in feel to using localstorage.
The API itself would then require registering of plugins for whatever storage providers you want to use. So there would be a plugin for Dropbox. The app developer chooses which plugins they want to add, but typically I imagine there being a standard bundle of popular providers, including https://remotestorage.io/ which then let's you self-host a server.
If you find that apps aren't including your favourite storage host, you can get around this with a chrome extension to register that when it detects a site using the api.
I'm undecided but this might include encryption options, or maybe that is a separate concern.
For authentication, there will be a default UI for telling the user they need to authenticate, e.g. with Dropbox and handling the tokens, but that will probably be overrideable to fit in with the branding of the app.
Any thoughts?