Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Go
  3. libradb

libradb

GPL-3.0Go

A simple, persistent key/value store written in pure Go for learning database internals.

GitHubGitHub
202 stars26 forks0 contributors

What is libradb?

LibraDB is a minimal, persistent key/value database implemented in pure Go under 1000 lines of code. It provides a practical example of database fundamentals like storage, ACID transactions, and B-tree indexing, making it an accessible starting point for understanding how databases work internally.

Target Audience

Go developers and students interested in learning database internals, such as how transactions, indexing, and persistent storage are implemented in a simplified, educational codebase.

Value Proposition

Developers choose LibraDB for its clarity and minimalism as a learning tool, offering a fully functional key/value store with ACID transactions and serializable isolation in a codebase small enough to be easily studied and understood.

Overview

LibraDB is a simple, persistent key/value store written in pure Go in less than 1000 lines for learning purposes.

Use Cases

Best For

  • Learning how to implement a basic key/value database from scratch in Go
  • Studying ACID transaction mechanics with serializable isolation in a minimal codebase
  • Understanding B-tree indexing and collection-based data organization in databases
  • Exploring concurrent database design with goroutine-safe transactions
  • Educational projects or workshops on database internals and storage engines
  • Prototyping or experimenting with persistent storage in Go without the complexity of production databases

Not Ideal For

  • Production applications requiring high throughput and scalability for large datasets
  • Projects needing advanced query capabilities like SQL or complex data relationships
  • Systems with high-concurrency write requirements where multiple simultaneous writes are essential
  • Environments where database durability and fault tolerance beyond basic persistence are critical

Pros & Cons

Pros

Minimal Codebase for Learning

With under 1000 lines of Go code, it provides a clear, digestible example of database implementation, perfect for studying core concepts like transactions and indexing.

ACID with Serializable Isolation

Implements full ACID transactions with serializable isolation, as shown in the README, offering a practical look at transaction handling in a simplified setting.

Persistent Key/Value Storage

Stores data durably on disk with simple get/put/remove operations, demonstrating how databases achieve persistence without complexity.

Collection-Based B-Tree Indexing

Organizes data into collections with B-tree structures for efficient access, illustrating indexing fundamentals in an approachable way.

Cons

Limited Performance and Scalability

Designed for clarity over speed, it lacks optimizations for high-performance scenarios, making it unsuitable for real-world applications with large data volumes.

Single Write Concurrency

Allows only one write transaction at a time, as mentioned in the README, which severely limits throughput and can bottleneck write-intensive workloads.

Basic Feature Set

Missing essential production features like backup tools, replication, or advanced querying, as it's purely educational and minimal by design.

Frequently Asked Questions

Quick Stats

Stars202
Forks26
Contributors0
Open Issues1
Last commit2 years ago
CreatedSince 2021

Tags

#b-tree#database#educational#data-structures#nosql#key-value-store#database-internals#golang#persistent-storage#go#acid-transactions

Built With

G
Go

Included in

Go169.1k
Auto-fetched 19 hours ago

Related Projects

Prometheus.ioPrometheus.io

The Prometheus monitoring system and time series database.

Stars65,277
Forks10,678
Last commit1 day ago
MilvusMilvus

Milvus is a high-performance, cloud-native vector database built for scalable vector ANN search

Stars45,359
Forks4,137
Last commit19 hours ago
TiDBTiDB

TiDB is built for agentic workloads that grow unpredictably, with ACID guarantees and native support for transactions, analytics, and vector search. No data silos. No noisy neighbors. No infrastructure ceiling.

Stars40,332
Forks6,221
Last commit19 hours ago
cockroachcockroach

CockroachDB — the cloud native, distributed SQL database designed for high availability, effortless scale, and control over data placement.

Stars32,314
Forks4,074
Last commit1 day ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub