#9797th of 173 in Backends, databases and hosting
badger
Embeddable key-value database for Go with ACID transactions
- Stars
- 15.8k
- License
- Apache-2.0
- Last commit
- Oct 2026
- Last release
- Aug 2026
- Language
- Go
Missed the latest GitHub check; these facts may be older.
Overview
BadgerDB is an embeddable, persistent key-value store written in pure Go, with no Cgo. It is an LSM tree that keeps values in a separate log, following the WiscKey paper, and is tuned for SSDs. It provides concurrent ACID transactions with serializable snapshot isolation, TTLs, snapshots and per-key versioning. It is the storage layer for Dgraph.
Who it is for: Go developers who need an embedded, transactional key-value store
Strengths
- Pure Go with no Cgo, so it builds without a C toolchain
- Concurrent ACID transactions with serializable snapshot isolation, tested by a nightly 8h bank test
- Supports TTLs, snapshots and multiple versions per key via the Iterator API
- Used in production by Dgraph, Jaeger and lakeFS, with data sets in the hundreds of TB
Weaknesses
- Embedded library only: no server, network API or built-in replication
- Go-only API, so non-Go applications cannot use it directly
- Directory locking and fsync are weaker on AIX, Windows, Plan9 and WASM
- Pinned to Go 1.23, which limits use of newer language features
What it needs
- no GPU
- Needs Go 1.23 or above
Also in Backends, databases and hosting
See all 173| Rank | Project | Score |
|---|---|---|
| 1 | bunJavaScript and TypeScript runtime with bundler, test runner and package manager | 93 out of 100 |
| 2 | traefikHTTP reverse proxy and load balancer that auto-discovers routes from orchestrators | 93 out of 100 |
| 3 | appwriteBackend with auth, databases, storage, functions and an MCP server for agents | 93 out of 100 |
| #4 | ormTypeScript ORM for PostgreSQL and MongoDB with a plugin SPI and agent skills | 93 out of 100 |
| #5 | strapiHeadless CMS that generates REST and GraphQL APIs from content models | 92 out of 100 |