# Storage Options

## RxDB

RxDB is a fast, local first, reactive Database for JavaScript Applications.

### References
* [Homepage](https://rxdb.info/)
* [Github repo](github.com/pubkey/rxdb)
* [Svelte example app](https://github.com/pubkey/rxdb/tree/master/examples/svelte)
* [Getting started](https://rxdb.info/quickstart.html)
* [Local First / Offline First](https://rxdb.info/offline-first.html)
* [Building an offline-first app with React and RxDB](https://blog.logrocket.com/building-an-offline-first-app-with-react-and-rxdb-e97a1fa64356/)
* [Offline-First App with React & RxDB](https://www.somethingsblog.com/2024/10/16/offline-first-app-with-react-rxdb/)

## IndexedDB

### References

* [Using IndexedDB](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API/Using_IndexedDB)
* [SO: Maximum item size in IndexedDB](https://stackoverflow.com/questions/5692820/maximum-item-size-in-indexeddb)

## Sqlite w/WASM

### References
* [@magieno/sqlite-client](https://www.npmjs.com/package/@magieno/sqlite-client)
    * [Vanilla Javascript demo](https://github.com/magieno/sqlite-client-demo/tree/master/examples/vanilla-js)
* [sqlite3 WebAssembly & JavaScript Documentation Index](https://sqlite.org/wasm/doc/trunk/index.md)

## References

* [LocalStorage vs. IndexedDB vs. Cookies vs. OPFS vs. WASM-SQLite](https://rxdb.info/articles/localstorage-indexeddb-cookies-opfs-sqlite-wasm.html)
* [Web Storage API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API)
* [Svelte Query](https://sveltequery.vercel.app/guides/query-keys)
* [Using SQLite in Web Browsers: WASM Integration and Use Cases](https://sqlite.work/using-sqlite-in-web-browsers-wasm-integration-and-use-cases/)
* [Create an offline-first and installable PWA with SvelteKit and workbox-precaching](https://www.sarcevic.dev/offline-first-installable-pwa-sveltekit-workbox-precaching)
* [NATS](https://nats.io/)
* [How To Install and Configure NATS on Ubuntu 16.04](https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-nats-on-ubuntu-16-04)
    * [Node client](https://beta-docs.nats.io/download/clients#node)
* [IndexedDB API](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API)
