The versions, and the work in each.
A storage engine whose only interface is a named, declared operation. There is no query language: no query text ever reaches it. Everything a caller can run was written down first — which collection it touches, which index it walks, how far, what it returns, and who may run it.
The consequence worth planning around is that cost is declared, not discovered. A scan
states its limit and so does a count, so the ceiling can be read before anything runs — unlike
EXPLAIN, which tells you what a planner chose that time. Operations can call other
operations, and the ceiling of the whole thing at any depth is still the number it declares.
| Version | What it freezes | Status |
|---|---|---|
| 1.0.0 | The on-disk format, the wire protocol, the meaning of a declaration, and the public API | In progress |
One version, on purpose. Naming later ones now would be writing down work nobody has committed to and conditions nobody has measured.
| Where | What |
|---|---|
| github.com/sapedb/sapedb | The server, the command line and the operator shell, in Go. MIT licensed. |
| material-atomic/ecosy-sapedb | The TypeScript client, @ecosy/sapedb. It also ships the conformance fixtures, which are the wire specification an implementation in any language can check itself against. |
| sapedb.com | What it is, and what it is not. |
| learn.sapedb.com | The guides. Every code sample there was run against a real daemon before it was published. |
The Go client lives inside the server repository, at the module root. The PHP and desktop repositories are not public yet, so they are not linked — an unreachable link is worse than no link.
Machine-readable: llms.txt, llms-full.txt, sitemap.xml, robots.txt.