A short, scannable list of what TerminusDB does, with a link to the docs for each feature. Want the full explanation? Read What is TerminusDB?. New to knowledge graphs? Start with What is a knowledge graph database?.
Quick facts
| Data model | Schema-enforced JSON documents, stored as a typed graph of RDF triples |
| Version control | Git-like branch, diff, merge, clone, push and pull, plus time-travel queries |
| Transactions | ACID, on an immutable storage layer |
| Query languages | WOQL (Datalog), GraphQL, and the HTTP document API |
| Search | Versioned semantic and hybrid search with the VectorLink indexer |
| Clients | Official: JavaScript and Python. Community: Rust and Elixir |
| License | Open source, Apache License 2.0 (GitHub) |
Three things make it distinctive:
Documents + Graph in one — Write and read JSON documents; under the hood, data is stored as a typed graph of triples. No need to choose between document-store convenience and graph traversal power. See The Document Model.
Git-for-data — Branch, merge, diff, reset, and time-travel through your data history. Push and pull between instances. See Version Control.
Datalog query engine (WOQL) — A declarative query language based on Prolog foundations. Pattern-match across documents and relationships without JOINs, with built-in support for aggregation, path queries, and schema-aware traversal. See WOQL Explained.
TerminusDB is maintained by Gettier in collaboration with the open-source community.
Overview of the system
Document graph paradigm
ACID RDF graph database with history and branches
- RDF graph database with immutable history
- graph database with ACID transactions
- full immutable history
- advanced type model with inheritance
- taxonomies with both inherited fieldsets and values
RDF semantics with a Closed World Assumption (rules engine)
- collaborative semantic infrastructure
- logic reasoning on information models
- rules-engine for complex digital twin graphs
Datalog query engine
- logical reasoning
- immutable history built in
- WOQL Abstract Syntax Tree (AST)
- how to query with WOQL
- Javascript WOQL Client
- Python WOQL Client
Data model and schema management
Git-for-data
Storage engine
- In-memory succinct data structures — documents decompose into content-addressed, immutable delta layers; all data persists to disk with ACID guarantees, while queries execute in-memory against the succinct representation (roughly 13 bytes per triple on large datasets)
- Delta rollup — periodic compaction that keeps the in-memory footprint bounded
- Immutable storage layer
Interoperability
- REST (OpenAPI Reference)
- WOQL datalog query language
- Rust-based high performance GraphQL Engine
- Javascript Client
- Python Client
- Rust Client (community)
- Elixir Client (community)
Complete User Interface
The TerminusDB Cloud offers a commercially packaged solution, with hosting API tokens and collaborative environments, modelling environment and document UI that help you go from idea to prototype and production in a few hours or a few days.