Open Source Document Graph Database


TerminusDB is a multi-model and distributed open-source graph database and document store. At it’s heart is a collaboration model providing Git-for-data features such as branch, merge, workflows, and revision control.

A document-oriented graph database with version control & collaboration model

As well as being an open-source graph database and document store, TerminusDB is also an immutable database, storing changes as deltas. Immutability enables collaboration workflows, version control, diff and patch, time travel, and the ability to branch, clone, and merge your database. Use TerminusDB to model and build data-intensive, collaborative applications.  Its features include:

Faster Time to Market

TerminusDB & TerminusCMS are fast – really fast. Build an application MVP in a single sprint.

Schema First

The flexible and extendable JSON schema syntax acts as a blueprint to model data and develop scalable applications.

Auto UI Generation

Document frames for viewing, adding, and editing data are automatically generated from your schema.

Git for Data

A versioning first database, fork, clone, branch, and merge, just like Git, to collaborate with colleagues, time travel, and develop with the safety of undo.

Document Oriented

Work with JSON documents and build relationships between documents in a powerful knowledge graph.


Quick to install, start building your apps in minutes.

take a technical deep dive

TerminusDB CTO and Co-Founder, Gavin Mendel-Gleason, has written a three-part blog explaining the technical internals of the open-source graph database and document store, TerminusDB. If you want a technical overview without marketing talk, this series is ideal for you. 

CI/CD for your database

Store data as JSON and utilize the power of graph database relationships. TerminusDB’s collaboration model lets you branch, clone, and merge your database and use workflows, approval processes, time travel, and version control to build applications that enable many users to share and use data concurrently.

TerminusDB - Build data-intensive apps fast

The TerminusDB schema language connects JSON documents into a graph. It is a distributed database with a collaboration model, designed to be like Git, but for data. Model your data and schema, store data as JSON, and use graph relationships within your queries to build data-first apps.

Making Collaboration
Build collaborative applications and knowledge graphs


TerminusCMS is a headless content management system. Built on top of TerminusDB, it is a cloud service to build headless systems for complex and collaborative applications. 

Data mesh - Build data products

Build an ecosystem of data products to create a domain-oriented and decentralized data mesh. Start with one data product and extend from there to organically decentralized your architecture at a pace that works for the business and data team.

How TerminusDB is being used

TerminusDB is used by enterprise businesses, start-ups, academics, and hobby developers to build an array of applications. From application layers to knowledge banks, read our use cases to get inspiration about how you can utilize TerminusDB as your database backend.

Graph Database


TerminusCMS is a headless content management system. Built on top of TerminusDB, it is a cloud service to build headless systems for complex and collaborative applications. 

TerminusCMS Admin UI to Curate Data in a headless CMS

Front-end developers
can build quickly with
JSON and GraphQL

Manage your teams,
access tokens, time
travel, and create
new projects.

Editing frames are 
auto-generated from
the schema along with
validation & localixation

Schema modeler,
document explorer,
GraphQL & Datalog
API playground, &
change request

Latest stories from TerminusDB

Vector database and vector embeddings
News & Events

Building a Vector Database to Make Use of Vector Embeddings

Vector databases are all the rage at the moment and it’s not just hype. The advance of AI, which is making use of vector embeddings, has significantly increased the buzz. This article talks about how we implemented a vector database in Rust in a week to give us semantic indexing and entity resolution using OpenAI to define our embeddings.

Read More »