Store All the Things Build Status

Noms is a content-addressed, immutable, decentralized, strongly-typed database.

In other words, Noms is Git for data.

This repository contains two reference implementations of the database—one in Go, and one in JavaScript. It also includes a number of tools and sample applications.

Setup

Noms is supported on Mac OS X and Linux. Windows is not currently supported.

  1. Install Go 1.6+
  2. Ensure your $GOPATH is configured
  3. Type type type:
git clone https://github.com/attic-labs/noms $GOPATH/src/github.com/attic-labs/noms
go install github.com/attic-labs/noms/cmd/noms

noms log http://demo.noms.io/cli-tour::film-locations

Command-Line Tour  |  Go SDK Tour  |  JavaScript SDK Tour  |  Intro to Noms


## What Is Noms Good For?

Data Version Control

Noms gives you the entire Git workflow, but for large-scale structured (or unstructured) data. Fork, merge, track history, efficiently synchronize changes, etc.


noms diff and noms log on large datasets

An Application Database with History

A database where every change is automatically and efficiently preserved. Instantly revert to, fork, or work from any historical commit.


Versioning, Diffing, and Syncing with Noms

An Archival Database

Trivially import snapshots from any format or API. Data is automatically versioned and deduplicated. Track the history of each datasource. Search across data sources.

TODO: Sample and video

More!

On our better days, we think of a decentralized, synchronizing database like Noms as an important new primitive in an increasing distributed computing environment. And we imagine many fascinating ways it could be used.

But we must crawl before we run. Right now, we are putting the basics in place: Efficient updates and range scans. Efficient diff and sync. Data integrity.

Let us know what ideas you have for Noms, or better yet [help us](TODO - help) build them.


## Status

Noms is in beta. Please keep a backup of important data in some other store.

We are working toward a 1.0, after which time we will remove this warning and guarantee format stability.


## Talk
Description
Dolt – Git for Data
Readme Apache-2.0 367 MiB
Latest
2026-01-22 19:05:28 -06:00
Languages
Go 84%
Shell 15.1%
JavaScript 0.3%
Java 0.1%