HelixDB is a lightweight, local-first JSON database engine built in Go. It provides an HTTP/JSON API for document storage with write-ahead logging (WAL) for data integrity.
- Core engine implemented with collections-based document storage
- HTTP API running on port 5000
- WAL-based crash recovery
- CORS enabled for cross-origin access
cmd/helixdb/ - Main entry point, CLI parsing
internal/
config/ - Configuration loading and schema
server/ - HTTP server, routes, middleware
storage/ - Storage engine, WAL
clients/ - Node.js and Python client libraries (stubs)
tests/ - Unit and integration tests (stubs)
api/ - OpenAPI spec and example payloads
helixdb.config.json- Server configuration (port, storage paths, security)cmd/helixdb/main.go- Application entry pointinternal/storage/engine.go- Core database engine with collectionsinternal/storage/wal.go- Write-ahead log implementationinternal/server/routes.go- HTTP API route handlersinternal/server/middleware.go- CORS, logging, auth middleware
GET /- Server infoGET /health- Health checkGET /collections- List all collectionsPOST /collections/:name- Create documentGET /collections/:name- List documents in collectionGET /collections/:name/:id- Get document by IDDELETE /collections/:name/:id- Delete documentPOST /collections/:name/query- Query documents with filters
Server port defaults to 5000 (Replit compatible). Config is loaded from helixdb.config.json.
- Data persisted to
./data/helix.db(JSON format) - WAL stored in
./data/wal/
- 2026-02-20: Initial implementation of Go codebase from project skeleton
- Configured for Replit with port 5000
- Added WAL, storage engine, HTTP API, config loading
- Set up VM deployment target
- None recorded yet