8 Repos
Stores any serializable JSON value as immutable data that snapshots as-is and ignores internal changes.
Distinct from Immutable Data Patterns: Distinct from Immutable Data Patterns: focuses on storing immutable data within a state tree that snapshots as-is, not general architectural immutability patterns.
Explore 8 awesome GitHub repositories matching software engineering & architecture · Immutable Data Storage. Refine with filters or upvote what's useful.
ProseMirror ist ein Framework für Rich-Text-Editoren und eine Engine für kollaboratives Editieren, die für den Aufbau semantischer Content-Editoren entwickelt wurde. Es bietet ein Toolkit zur Erstellung von Text-Interfaces, bei denen die Dokumentstruktur durch ein deklaratives, schemabasiertes Modell gesteuert wird. Das Framework ermöglicht die Entwicklung von Editoren, die Text als strukturierte Daten anstatt als einfaches HTML behandeln, wodurch sichergestellt wird, dass der Dokumentinhalt durch ein striktes Schema semantisch konsistent bleibt. Diese Architektur unterstützt kollaboratives Editieren in Echtzeit, um Dokumentänderungen über mehrere Benutzer hinweg zu synchronisieren.
Uses a persistent immutable state tree to manage document versions and provide a reliable undo history.
MobX State Tree is a structured, tree-based state management library for JavaScript applications that combines typed model definitions with reactive snapshots and patch-based change tracking. It provides a reactive state container with runtime and compile-time type safety, where application state is defined as a tree of typed models with collocated actions, computed views, and lifecycle hooks for predictable state mutations. The library is built around an action-centric mutation model that encapsulates all state changes within named functions that directly modify the tree, supported by genera
Stores serializable JSON values as immutable data that snapshots as-is and ignores internal changes.
Athens is no longer maintainted. Athens was an open-source, collaborative knowledge graph, backed by YC W21
Stores graph data as immutable facts in a Datomic-style database enabling time-travel queries and conflict-free concurrent edits.
Datascript ist ein unveränderlicher (immutable) In-Memory-Zustandsspeicher und ein schemabasierter Triple-Store. Es verwaltet den Anwendungszustand als versionierte Datenbank und speichert Daten als unveränderliche Fakten, die aus Entität, Attribut, Wert und Transaktion bestehen. Das Projekt bietet eine Logik-Engine zur Ausführung von Datalog-Abfragen mit Unterstützung für implizite Joins, rekursive Regeln und Negation. Es verfügt zudem über eine deklarative Pull-API zum Abrufen tief verschachtelter Entitätsgraphen und zugehöriger Datenstrukturen. Die Datenbank erzwingt Datenintegrität durch schemagesteuerte Einschränkungen und Attributtypen. Sie unterstützt atomare Transaktionen, erweiterbare Speicherprotokolle für Persistenz sowie B-Baum-Attributindizierung zur Optimierung von Suchvorgängen. Das System ist für den Einsatz in Clojure-, ClojureScript- und JavaScript-Umgebungen konzipiert.
Implements a Datomic-style immutable store allowing for time-travel queries and consistent state snapshots.
TinyBase ist ein reaktiver Datenspeicher und eine In-Memory-relationale Datenbank, die für die clientseitige Status-Persistenz entwickelt wurde. Sie dient als Local-First-Sync-Engine, die verteilten Status mithilfe von Conflict-free Replicated Data Types (CRDTs) und logischen Uhren zusammenführt, um eine deterministische Datenkonvergenz sicherzustellen. Das Projekt bietet eine Schema-Validierungsbibliothek, die externe Definitionen aus Tools wie Zod, Yup und TypeBox in typsichere Store-Definitionen konvertiert. Es stellt eine Infrastruktur für kollaboratives Echtzeit-Editieren bereit und nutzt die Synchronisation mit Automerge, Yjs und PartyKit, um einen konsistenten Status über mehrere Clients und Server hinweg beizubehalten. Die Kompetenzoberfläche umfasst relationale Datenmodellierung mit Tabellen und Fremdschlüsseln, SQL-ähnliche Abfragen und Indexierung sowie atomare Transaktionen für gruppierte Mutationen. Es unterstützt eine breite Palette an Persistenz-Adaptern, darunter Browser-Storage, SQLite und Cloudflare Durable Objects. Das System bietet zudem bidirektionales Status-Binding und deklarative Komponenten für die Integration mit React, SolidJS und Svelte.
Allows fetching values, tables, or cells from the data store as immutable copies to prevent accidental side effects.
BigchainDB ist ein Blockchain-Datenmanagementsystem, das entwickelt wurde, um große Datensätze in einem verteilten Ledger zu speichern und gleichzeitig die Abfrageperformance einer traditionellen Datenbank beizubehalten. Es bietet unveränderliche Datensatzspeicherung für Daten und digitale Assets und stellt eine verifizierbare Historie aller Einträge sicher. Das Projekt integriert eine dezentrale Blockchain-Struktur mit einem NoSQL-Datenbank-Backend, um effiziente Indizierung und komplexe Datenabfragen zu ermöglichen. Es verwendet ein konsensbasiertes Zustandsreplikationsmodell und unveränderliches Transaktions-Logging, um unbefugte Datensatzänderungen zu verhindern. Das System macht den Ledger-Status und Schreiboperationen über eine JSON-RPC-API und HTTP-basiertes Daten-Streaming zugänglich. Diese Schnittstellen ermöglichen die programmatische Interaktion und den Abruf von Datensätzen unter Verwendung von Filtern und Lookups.
Saves records to a decentralized ledger to ensure data integrity while maintaining fast database lookups.
Editable ist ein modulares Framework für den Aufbau benutzerdefinierter webbasierter Rich-Text-Editoren. Es bietet eine strukturierte Umgebung für die Verwaltung komplexer Dokumentinhalte, einschließlich Unterstützung für strukturierte Daten wie Listen und Raster, während eine unveränderliche Baumdarstellung (Immutable Tree) beibehalten wird, um eine vorhersagbare Zustandsmanipulation zu gewährleisten. Das Framework zeichnet sich durch eine kollaborative Engine aus, die den Dokumentzustand über mehrere Benutzer hinweg in Echtzeit mittels Operational Transformation synchronisiert. Zudem verfügt es über eine Plugin-basierte Architektur, die es Entwicklern ermöglicht, Rendering- und Node-Verhalten abzufangen, was die Injektion benutzerdefinierter Komponenten und Logik in die Dokumentstruktur erlaubt. Das System enthält ein umfassendes Toolkit für die Inhaltstransformation, das die Konvertierung von Dokumentdaten zwischen HTML-, Markdown- und Plain-Text-Formaten erleichtert. Es integriert zudem ein befehlsbasiertes Verlaufssystem zur Nachverfolgung von Benutzeraktionen, das präzise Undo- und Redo-Funktionen während der gesamten Bearbeitungssitzung bietet.
Maintains document content as an immutable tree to ensure predictable state manipulation and efficient tracking.
This project is a framework for building real-time collaborative rich-text editing environments. It provides a structured, schema-based engine that enforces document integrity while allowing multiple users to modify content simultaneously through synchronized state management and conflict resolution protocols. The editor distinguishes itself through a highly modular plugin architecture that supports the integration of complex, interactive UI components built with external frontend libraries. By utilizing a custom rendering engine and a versioned, immutable document state tree, it enables deve
Maintains document content as a persistent, versioned, and immutable tree structure to facilitate efficient synchronization and diffing.