Hysen Labs
Open-source project
project-minigraf/minigraf avatar
project-minigraf

minigraf

Embedded graph memory for AI agents, mobile apps, and the browser.

30 stars7 forksRustApache-2.0
DEEP OPEN-SOURCE ANALYSIS

Minigraf is an embedded graph database with Datalog and time travel

A tiny self contained graph store for AI agents, mobile apps, and the browser, described as the SQLite of bi temporal graph databases.

What Minigraf is built to do

Minigraf is a tiny, self contained graph database with Datalog queries and bi temporal time travel. The README calls it the SQLite of bi temporal graph databases, which is a way of saying it aims to be a small, embeddable store for connected data with full history, the same way SQLite is a small embeddable store for tables. The project is aimed at AI agents, mobile apps, and the browser. The README lists several things the database lets you do. You can query relationships with Datalog, which supports recursive rules and natural graph traversal. You can time travel through history using bi temporal queries that combine transaction time and valid time. You can use window functions such as sum, count, min, max, avg, rank, and row number inside find clauses, partitioned and ordered with an over expression. You can prepare statements by parsing and planning once with slot bind tokens and then executing thousands of times. The README also says you can embed the database anywhere, which fits the stated goal of running inside agents, apps, and browsers. These features together make Minigraf a general purpose graph store rather than a narrow specialized one, and the Datalog engine is the part that handles the recursive relationship queries.

How the bi temporal model works

The README describes Minigraf as supporting bi temporal time travel, and it explains the two time axes by name. One axis is transaction time, which is when a fact was recorded in the store. The other axis is valid time, which is when the fact was true in the world. A bi temporal query can ask both when something was known and when it was the case, which is useful for auditing and for reconstructing past states of a graph. The README groups this under time travel through history, and it sits alongside the Datalog query feature as a core capability. Window functions are another analytical feature: the README shows sum, count, min, max, avg, rank, and row number available in find clauses, with an over expression that takes partition by and order by parts. Prepared statements round out the performance story, letting you parse and plan a query once using dollar sign slot bind tokens and then run it many times with different values. Together these features let an application store connected data, ask recursive questions about it, look at it as it stood at a past point, and run aggregate window calculations, all from one small embedded engine.

How to obtain and try Minigraf

The README provides several ways to get Minigraf and inspect it. The badges point to crates.io for the Rust package, docs.rs for the API documentation, and a release badge for version v1.2.0. The license badge states MIT OR Apache 2.0, so a user can pick either license. A Rust edition badge shows edition 2024, which tells you the toolchain expectation for building from source. The README also links a browser playground at minigraf-playground.vercel.app where you can try the database with no install needed, which is the fastest way to see Datalog and time travel in action. Build and quality signals are shown through GitHub Actions badges for the Rust workflow and a Clippy workflow, plus a coverage badge from Codecov. The project is published as a single file embedded graph database, which matches the SQLite comparison in the introduction. For someone evaluating Minigraf, the practical path is to open the playground first, read the docs.rs reference next, and only then add the crate to a Rust project. The playground link means a first test needs no Rust install and no local build of the crate. A user who only wants to glance at the query style can therefore do so in a browser tab before committing to a local setup.

Editorial conclusion

Minigraf is written in Rust, carries the MIT OR Apache 2.0 license, and reached release v1.2.0, and a browser playground is hosted at minigraf-playground.vercel.app so you can try it without installing.

DEEP OPEN-SOURCE ANALYSIS

Official sources

Community notes

Community notes