git404hub

what is chrondb fr?

avelino/chrondb — explained in plain English

Analysis updated 2026-05-18

97ClojureAudience · developerComplexity · 4/5LicenseSetup · moderate

tl;dr

A key-value database built on Git that keeps every past version of your data, so you can query what any record looked like at any point in time.

vibe map

mindmap
  root((ChronDB))
    What it does
      Full version history
      Time travel queries
      Git backed storage
    Tech stack
      Clojure
      Git
      Apache Lucene
    Use cases
      Audit trails
      Branching data
      Full text search
    Audience
      Backend developers
      Data engineers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Store data with a complete, queryable history of every past change.

VIBE 2

Query what a record looked like at any previous point in time.

VIBE 3

Branch and merge data the same way you would branch and merge code.

VIBE 4

Connect existing Redis or PostgreSQL client tools to a Git-backed database.

what's the stack?

ClojureGitApache LuceneDocker

how it stacks up fr

avelino/chrondbyogthos/flatirondynamic-alpha/ducktape
Stars972719
LanguageClojureClojureClojure
Setup difficultymoderatemoderatemoderate
Complexity4/53/53/5
Audiencedeveloperdeveloperdata

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · moderate time til it works · 30min

Requires Docker, or Java 11+ and Git 2.25+ if running from source.

You can use, study, modify, and redistribute it, but if you run a modified version as a network service, you must share that source code too.

in plain english

ChronDB is a database that stores key-value data and keeps a complete record of every change ever made. Unlike most databases that overwrite old data when you update a record, ChronDB preserves all previous versions. This means you can look up what any piece of data looked like at any point in the past, which the project calls "time travel" queries. Under the hood, ChronDB uses Git as its storage foundation. Git is a tool normally used to track changes to code files, and ChronDB applies the same idea to data. This gives it built-in support for branching (creating isolated copies of your data for testing), merging changes, and a full audit trail of who changed what and when. You can connect to ChronDB in several ways. There is a native API for Clojure applications, an HTTP REST interface for any programming language, a Redis-compatible interface so tools built for Redis work without changes, and a PostgreSQL-compatible interface for SQL-based clients. There are also language bindings for Python and Rust if you want to embed the database directly in an application. ChronDB supports ACID transactions, meaning it guarantees that writes are consistent and durable. It stores any JSON-compatible data without requiring a fixed schema upfront. The search layer runs on Apache Lucene, the same search engine used by many production systems, which enables full-text search with configurable indexes. The quickest way to run it is via Docker, with ports exposed for all three protocol options. A Clojure dependency entry is available for direct use in JVM projects.

prompts (copy fr)

prompt 1
Run ChronDB with Docker and show me how to save and time-travel a document.
prompt 2
Explain how ChronDB maps database concepts like tables and schemas onto Git branches and directories.
prompt 3
Show me how to query a document's full history in ChronDB.
prompt 4
How do I connect to ChronDB using a Redis client instead of the native Clojure API?

Frequently asked questions

what is chrondb fr?

A key-value database built on Git that keeps every past version of your data, so you can query what any record looked like at any point in time.

What language is chrondb written in?

Mainly Clojure. The stack also includes Clojure, Git, Apache Lucene.

What license does chrondb use?

You can use, study, modify, and redistribute it, but if you run a modified version as a network service, you must share that source code too.

How hard is chrondb to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is chrondb for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.