# remotestorage/remotestorage.js

⬡ JavaScript client library for integrating remoteStorage in apps

Repository: https://github.com/remotestorage/remotestorage.js
Canonical: https://ross.abutalabs.com/products/remotestoragejs
Homepage: https://remotestorage.io/rs.js/docs/
Language: JavaScript
License: MIT
License Family: permissive
Topics: remotestorage, remotestorage-client, javascript, storage, localstorage, indexeddb, sync, synchronization, offline-first, unhosted, offline-capable
Last push: 2026-08-12T17:36:39+00:00

## Health v2 (maintenance only)
Score: 90/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 97, release rhythm 74, longevity 100
- inputs: {"age_days": 5781, "days_push": 21, "days_rel": 19, "gap_med": 109, "n_releases_24m": 4}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2419, forks 143 (observed 2026-08-28T04:06:50.485367+00:00)

## What it is
remoteStorage.js is a JavaScript/TypeScript client library for storing user data locally in the browser and syncing it with remoteStorage servers, as well as optionally Dropbox or Google Drive accounts. It enables offline-first, unhosted apps where users connect their own storage account, so developers need no backend for user data.

## Use cases
- add offline-first data storage and sync to a web app
- let users connect their own storage account instead of building a backend
- sync app data across devices and applications
- cache data locally with localStorage/IndexedDB and sync when back online
- integrate Dropbox or Google Drive as user storage in a JavaScript app
- build unhosted apps that keep working when the server is down
- share data between apps via open data modules

## When to choose
- you want offline-capable apps with automatic sync and no server-side user data storage
- you want users to keep control of their data by connecting their own remoteStorage, Dropbox, or Google Drive account
- you need a mature, production-tested client-side sync library for browser or Node.js apps

## When to avoid
- you need a traditional hosted backend with server-side business logic over user data
- your app requires relational queries or complex server-side data processing
- you only need simple key-value storage without cross-device sync

## Facets
- artifact type: library
- maturity: stable
- function: caching, file-system, sdk
- domain: web-development, frontend, privacy, self-hosted, files
- platform: browser, cross-platform
- tags: offline-first, remotestorage, sync, localstorage, indexeddb, unhosted, dropbox, google-drive, oauth, zero-backend, nodejs

## Member repositories
- remotestorage/remotestorage.js (main) score 90

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:50.485367+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:33:05.966168+00:00, confidence not recorded.
  - readme: https://github.com/remotestorage/remotestorage.js (fetched 2026-08-28T04:06:50.485367+00:00, sha e83648996686)
  - homepage: https://remotestorage.io/rs.js/docs/ (fetched 2026-08-29T10:13:59.727140+00:00, sha de46f35859e0)
  - site_page: https://remotestorage.io/rs.js/docs/getting-started/initialize-and-configure.html (fetched 2026-08-29T10:13:59.742607+00:00, sha 58da0eea9349)
  - site_page: https://remotestorage.io/rs.js/docs/why.html (fetched 2026-08-29T10:13:59.737837+00:00, sha 43bb601de5db)
  - site_page: https://remotestorage.io/rs.js/docs/getting-started (fetched 2026-08-29T10:13:59.739625+00:00, sha ce53620a2169)
  - site_page: https://remotestorage.io/rs.js/docs/getting-started/how-to-add.html (fetched 2026-08-29T10:13:59.741076+00:00, sha f0af296a987e)
  - site_page: https://remotestorage.io/rs.js/docs/getting-started/connect-widget.html (fetched 2026-08-29T10:13:59.744114+00:00, sha 9f9e6a41aa5b)
  - site_page: https://remotestorage.io/rs.js/docs/getting-started/events.html (fetched 2026-08-29T10:13:59.745740+00:00, sha dee3bb65619b)
  - site_page: https://remotestorage.io/rs.js/docs/getting-started/read-and-write-data.html (fetched 2026-08-29T10:13:59.747266+00:00, sha 9401b8df2ebe)
- Data as of 2026-08-30T08:39:29.467469+00:00.
