1 dépôt
General mechanisms for saving in-memory state to a storage medium across sessions.
Distinct from Browser Storage Persistence: Candidates are too specific to frameworks (Redux/Vuex) or specific systems (contracts).
Explore 1 awesome GitHub repository matching data & databases · General State Persistence. Refine with filters or upvote what's useful.
TinyBase est un magasin de données réactif et une base de données relationnelle en mémoire conçue pour la persistance de l'état côté client. Il sert de moteur de synchronisation local-first qui fusionne l'état distribué en utilisant des types de données répliqués sans conflit (CRDT) et des horloges logiques pour assurer une convergence déterministe des données. Le projet présente une bibliothèque de validation de schéma qui convertit les définitions externes provenant d'outils comme Zod, Yup et TypeBox en définitions de magasin typées. Il fournit une infrastructure pour l'édition collaborative en temps réel, utilisant la synchronisation avec Automerge, Yjs et PartyKit pour maintenir un état cohérent entre plusieurs clients et serveurs. La surface de capacité inclut la modélisation de données relationnelles avec des tables et des clés étrangères, des requêtes et indexations de type SQL, et des transactions atomiques pour les mutations groupées. Il prend en charge un large éventail d'adaptateurs de persistance, incluant le stockage navigateur, SQLite et Cloudflare Durable Objects. Le système fournit également une liaison d'état bidirectionnelle et des composants déclaratifs pour l'intégration avec React, SolidJS et Svelte.
Saves data to a storage medium so that state is maintained across sessions and page reloads.