awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
tonsky avatar

tonsky/datascript

0
View on GitHub↗
5,767 estrellas·317 forks·Clojure·EPL-1.0·5 vistas

Datascript

Datascript es un almacén de estado inmutable en memoria y un almacén de triples basado en esquemas. Gestiona el estado de la aplicación como una base de datos versionada, almacenando datos como hechos inmutables que consisten en una entidad, atributo, valor y transacción.

El proyecto proporciona un motor lógico para ejecutar consultas Datalog con soporte para joins implícitos, reglas recursivas y negación. También cuenta con una API de extracción declarativa para recuperar grafos de entidades profundamente anidados y estructuras de datos relacionadas.

La base de datos impone la integridad de los datos a través de restricciones basadas en esquemas y tipos de atributos. Admite transacciones atómicas, protocolos de almacenamiento conectables para persistencia e indexación de atributos B-tree para optimizar las búsquedas.

El sistema está diseñado para su uso en entornos Clojure, ClojureScript y JavaScript.

Features

  • Triple Stores - Implements a schema-based triple store using an EAVT model for flexible data representation.
  • Logic-Based Relational Querying - Provides a logic-based relational query engine using Datalog paradigms for Clojure and JavaScript environments.
  • Triple Stores - Implements a schema-based triple store using an EAVT model to manage immutable facts.
  • Nested Entity Retrieval - Extracts related data using a pull API that supports recursive exploration of entity graphs.
  • Application State Management - Provides centralized application state management using an immutable in-memory data store.
  • Schema-Enforced Triple Stores - Combines a triple store architecture with schema-driven constraints to ensure data integrity and optimize indexing.
  • Declarative Pull APIs - Provides a declarative pull API for retrieving deeply nested entity graphs and related data.
  • In-Memory Data Stores - Provides a high-performance in-memory data store for managing ephemeral application state.
  • In-Memory State Stores - Maintains application state in an immutable in-memory store to ensure low-latency interaction.
  • Logic Query Engines - Provides a logic query engine using Datalog to resolve complex data relationships through recursive rules and negation.
  • Entity Graph Fetching - Implements a declarative pull API to retrieve deeply nested entity graphs and related data structures.
  • Datalog Recursive Rules - Uses a Datalog engine to execute complex lookups including recursive rules and transitive closures.
  • Complex Search Querying - Supports advanced querying of application state using negation, disjunction, and recursive rules.
  • Graph Pull APIs - Offers a declarative pull API for extracting deeply nested entity graphs and customized result shapes.
  • Immutable Data Storage - Treats data as immutable values to create new database versions while preserving older ones.
  • Datomic-Style Immutable Stores - Implements a Datomic-style immutable store allowing for time-travel queries and consistent state snapshots.
  • EAVT Triple Stores - Implements a versioned database using an immutable EAVT (Entity-Attribute-Value-Transaction) triple store model.
  • Transactional State Versioning - Treats all data changes as additive to maintain a history of database snapshots via transactional state versioning.
  • Schema-Based Data Models - Enforces data integrity and lookup performance via schema-driven attribute types and unique identity constraints.
  • Atomic Transaction Execution - Supports grouping database updates into atomic transactions to ensure data consistency.
  • Database Schema Constraints - Enforces data integrity and lookup performance through defined attribute types and unique identity constraints.
  • Schema Querying - Allows finding entities that match specific attribute configurations by treating the schema definition as a queryable collection.
  • Database Transactions - Updates database state through atomic transactions supporting upserts and custom functions.
  • Custom Storage Implementations - Provides a protocol to route database reads and writes to custom external storage backends.
  • Pluggable Storage Engines - Decouples the in-memory database from the persistence layer through a pluggable storage engine interface.
  • B-Tree - Implements B-Tree attribute indexing to optimize value lookups and range queries within the state store.
  • B+ Tree Indexing - Utilizes B-tree indexing to speed up attribute lookups and range queries.
  • Incremental State Persistence - Minimizes storage overhead by persisting only modified portions of the database to the backend.
  • JavaScript Interoperability - Integrates with JavaScript engines to allow queries and transactions using standard arrays and objects.
  • Schema-Driven Validations - Validates data integrity and optimizes indexing by applying attribute types and uniqueness rules during transactions.
  • State Evolution Tracking - Records database changes to enable rewinding state and maintaining consistent snapshots.
  • Databases and Persistence - In-memory database and Datalog query engine.
  • Databases & Data - Immutable in-memory database with Datalog query capabilities.

Historial de estrellas

Gráfico del historial de estrellas de tonsky/datascriptGráfico del historial de estrellas de tonsky/datascript

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Datascript

Proyectos open-source similares, clasificados según cuántas características comparten con Datascript.
  • cozodb/cozoAvatar de cozodb

    cozodb/cozo

    3,880Ver en GitHub↗

    Cozo is a logic-based database engine that functions as a relational data store, an embedded graph database, and a temporal vector database. It utilizes a Datalog-inspired query language to execute relational, recursive, and graph queries. The system distinguishes itself through specialized indexing for high-dimensional vector similarity searches and near-duplicate detection using locality sensitive hashing. It also provides built-in temporal versioning, allowing for historical state retrieval and time-travel queries to access data as it existed at specific points in time. Its broader capabi

    Rustclient-servercozocozoscript
    Ver en GitHub↗3,880
  • tporadowski/redisAvatar de tporadowski

    tporadowski/redis

    9,987Ver en GitHub↗

    Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL database. It provides sub-millisecond read and write access to data stored in RAM and can operate as a vector database for indexing high-dimensional embeddings. The system supports a wide range of data storage and synchronization primitives, including the management of strings, hashes, lists, sets, and JSON documents. It enables real-time data operations through atomic transactions, hybrid persistence using snapshots and append-only logs, and high-availability configurations

    Credisredis-for-windowsredis-msi-installer
    Ver en GitHub↗9,987
  • tinyplex/tinybaseAvatar de tinyplex

    tinyplex/tinybase

    5,110Ver en GitHub↗

    TinyBase is a reactive data store and in-memory relational database designed for client-side state persistence. It serves as a local-first sync engine that merges distributed state using conflict-free replicated data types and logical clocks to ensure deterministic data convergence. The project features a schema validation library that converts external definitions from tools like Zod, Yup, and TypeBox into type-safe store definitions. It provides an infrastructure for real-time collaborative editing, utilizing synchronization with Automerge, Yjs, and PartyKit to maintain consistent state acr

    TypeScriptdatajavascriptreact
    Ver en GitHub↗5,110
  • pubkey/rxdbAvatar de pubkey

    pubkey/rxdb

    23,048Ver en GitHub↗

    This project is a reactive, offline-first NoSQL database engine designed for JavaScript applications. It provides a robust framework for managing application state by synchronizing data across browsers, mobile devices, and server-side runtimes. By treating local storage as the primary source of truth, it enables applications to remain functional without network connectivity, automatically reconciling changes with remote backends once a connection is restored. The database distinguishes itself through a modular architecture that supports cross-environment synchronization and high-performance d

    TypeScriptangularbrowser-databasecouchdb
    Ver en GitHub↗23,048
Ver las 30 alternativas a Datascript→

Preguntas frecuentes

¿Qué hace tonsky/datascript?

Datascript es un almacén de estado inmutable en memoria y un almacén de triples basado en esquemas. Gestiona el estado de la aplicación como una base de datos versionada, almacenando datos como hechos inmutables que consisten en una entidad, atributo, valor y transacción.

¿Cuáles son las características principales de tonsky/datascript?

Las características principales de tonsky/datascript son: Triple Stores, Logic-Based Relational Querying, Nested Entity Retrieval, Application State Management, Schema-Enforced Triple Stores, Declarative Pull APIs, In-Memory Data Stores, In-Memory State Stores.

¿Qué alternativas de código abierto existen para tonsky/datascript?

Las alternativas de código abierto para tonsky/datascript incluyen: cozodb/cozo — Cozo is a logic-based database engine that functions as a relational data store, an embedded graph database, and a… tporadowski/redis — Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL… tinyplex/tinybase — TinyBase is a reactive data store and in-memory relational database designed for client-side state persistence. It… pubkey/rxdb — This project is a reactive, offline-first NoSQL database engine designed for JavaScript applications. It provides a… mystenlabs/sui — Sui is a blockchain platform featuring an object-centric state model and resource-oriented smart contracts. It… typedb/typedb — TypeDB is a strongly-typed graph database and knowledge graph management system. It serves as a multi-model data store…