OPEN SOURCE · 2026 · MIT LICENSE
libvdb/
A small, journaled, embedded database written in portable C89 — built for Classic Mac OS, DOS, and the retro and embedded hardware that time forgot.
- lang
- C89
- targets
- Mac OS 7–9 · DOS · Linux · UNIX
- storage
- 512-byte pages · B-Trees
- safety
- WAL + CRC16
- license
- MIT
## why
vDB is a record manager in the style of the embedded databases of the 1980s and 1990s. It uses almost no dynamic memory, so it runs on memory-constrained vintage machines, and it serializes every value byte by byte, so a file written on a big-endian Mac opens on a little-endian PC.
Writes go through a write-ahead journal with CRC16 checksums. If the power fails mid-write, the next open replays or discards the journal and the data stays consistent.
## how it was built
I wrote the design specification by hand. Claude Code implemented it with two agents: a software engineer that wrote the code, and a QA engineer that reviewed each change against the spec.
Insufficient bounds checking on key counts read back from disk.
Missing validation when following overflow page chains.
Both are real security bugs that an unreviewed implementation would have shipped. The build log goes through the whole workflow.