# replikativ/datahike

Versioned, fast, distributed Datalog engine for everyone.

Repository: https://github.com/replikativ/datahike
Canonical: https://ross.abutalabs.com/products/datahike
Homepage: https://datahike.io
Language: Clojure
License: EPL-1.0
License Family: copyleft
Topics: datahike, datalog, database, clojure, open-source
Last push: 2026-08-26T18:42:36+00:00

## Health v2 (maintenance only)
Score: 95/100 (v2, computed 2026-09-03T02:39:23.370411+00:00)
- activity 99, release rhythm 87, longevity 100
- inputs: {"age_days": 3162, "days_push": 7, "days_rel": 7, "gap_med": 0.0, "n_releases_24m": 221}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1864, forks 118 (observed 2026-08-28T04:05:46.149295+00:00)

## What it is
Datahike is a durable, versioned Datalog database with Datomic-compatible APIs and git-like semantics, built on persistent data structures so every transaction yields an immutable, shareable snapshot. It supports time-travel queries, GDPR-compliant data excision, pluggable storage backends (file, LMDB, S3, JDBC, Redis, IndexedDB), and direct reader access to storage without a server.

## Use cases
- embed a Datomic-compatible Datalog database in a Clojure application
- query historical states of a database with time travel
- store application data directly in S3 without running a database server
- build auditable data pipelines with a full transaction history
- implement GDPR-compliant data purging with a verifiable audit trail
- share immutable database snapshots between teams via a common S3 bucket
- give long-running AI agents a versioned memory substrate
- query graph-like relationships with recursive Datalog rules instead of SQL joins

## When to choose
- you want Datomic-style Datalog semantics without Datomic's licensing or server requirements
- you need immutable snapshots, branching, and time-travel queries as first-class features
- you want readers to query storage (S3, filesystem) directly without a database server
- you need GDPR-compliant data excision with an audit trail
- you're building Clojure/ClojureScript apps that share one data model across JVM, Node, and browser

## When to avoid
- you need heavy concurrent write throughput with centralized transaction coordination
- your team is SQL-first and Datalog's rule-based querying would be a hurdle
- you require a mature ecosystem of ORMs, admin tools, and managed hosting
- you need strict ACID guarantees across a distributed cluster with multi-master writes

## Facets
- artifact type: library
- maturity: active
- function: database, search-engine, vector-database, serialization
- domain: databases, developer-tools, large-language-models, microservices
- platform: jvm, jvm-scripting, browser, cross-platform, self-hosted
- tags: datalog, datomic-compatible, immutable-database, time-travel, git-like-branching, embedded-database, konserve, gdpr, merkle-verified, clojure, clojurescript, persistent-data-structures, nodejs

## Member repositories
- replikativ/datahike (main) score 95

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:46.149295+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-30T03:15:36.832069+00:00, confidence not recorded.
  - readme: https://github.com/replikativ/datahike (fetched 2026-08-28T04:05:46.149295+00:00, sha 395c9203d61a)
  - homepage: https://datahike.io (fetched 2026-08-29T10:54:37.091655+00:00, sha cd7df0405480)
  - site_page: https://datahike.io/about (fetched 2026-08-29T10:54:37.101284+00:00, sha 9e6e129de0bf)
  - site_page: https://datahike.io/proximum (fetched 2026-08-29T10:54:37.103328+00:00, sha 6768c40739da)
- Data as of 2026-08-30T08:39:29.467469+00:00.
