# Expensify/Bedrock

Rock solid distributed database specializing in active/active automatic failover and WAN replication

Repository: https://github.com/Expensify/Bedrock
Canonical: https://ross.abutalabs.com/products/expensify-bedrock
Homepage: https://bedrockdb.com
Language: C
License: LGPL-3.0
License Family: copyleft
Last push: 2026-09-03T00:16:53+00:00

## Health v2 (maintenance only)
Score: 96/100 (v2, computed 2026-09-03T02:39:23.370411+00:00)
- activity 100, release rhythm 88, longevity 100
- inputs: {"age_days": 3644, "days_push": 0, "days_rel": 0, "gap_med": 0.0, "n_releases_24m": 565}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1264, forks 107 (observed 2026-09-03T02:15:05.806487+00:00)

## What it is
Bedrock is a distributed database server built by Expensify on top of SQLite, providing WAN replication, active/active automatic failover, and a private blockchain for cluster synchronization. It is modular with plugins for databases, job queues, and caches, serving as a data foundation for global-scale applications.

## Use cases
- run a mysql alternative with wan replication across datacenters
- set up active/active database failover between regions
- build a globally distributed backend on sqlite
- replace mysql replication with a simpler distributed database
- run a job queue and cache backed by the same datastore
- deploy a geo-redundant database for a global-scale web service

## When to choose
- you need multi-datacenter WAN replication with automatic failover
- you want SQLite performance with networked, distributed transactions
- you prefer few configuration knobs with sensible defaults
- you want database, cache, and job queue in one platform

## When to avoid
- you need a widely supported database with a large ecosystem of drivers and tools
- you require complex SQL features or stored procedures beyond SQLite's capabilities
- you need multi-master write conflict resolution with rich data types
- your team cannot operate a less mainstream database

## Facets
- artifact type: service
- maturity: active
- function: database, caching, message-queue, rpc, security
- domain: databases, microservices, backend, self-hosted
- platform: cpp, c, self-hosted
- tags: sqlite, wan-replication, active-active, failover, distributed-transactions, mysql-alternative, plugins, linux, macos, web-server

## Member repositories
- Expensify/Bedrock (main) score 96

## Provenance
- Observed fields: from GitHub, fetched 2026-09-03T02:15:05.806487+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T05:04:05.540715+00:00, confidence not recorded.
  - readme: https://github.com/Expensify/Bedrock (fetched 2026-09-03T02:15:05.806487+00:00, sha 74b0a24b7415)
  - homepage: https://bedrockdb.com (fetched 2026-08-29T12:16:05.782476+00:00, sha fb3b5325c392)
- Data as of 2026-08-30T08:39:29.467469+00:00.
