Stack
Tools and numbers
What the projects use and what they do not. Numbers are counted by a script over the real project folders.
Live statistics
Counted: 2026-10-22
- 17
- measured projects
- 26,503
- lines of Go
- 12,027
- lines of tests
- 418
- tests
- 230
- routes
- 10,313
- lines of HTML/CSS/JS
Per project| Project | Go | Tests | Routes | HTML/CSS/JS |
|---|
| Sluice: API gateway | 2,334 | 48 | 11 | 417 |
|---|
| Keyring: an authentication service | 2,826 | 50 | 35 | 689 |
|---|
| Appointment booking | 891 | 12 | 18 | 578 |
|---|
| Ledger: personal finance tracker | 3,741 | 30 | 45 | 1,244 |
|---|
| GitPulse: git repository analytics | 2,133 | 32 | 3 | 0 |
|---|
| Conveyor: job queue | 2,161 | 25 | 19 | 657 |
|---|
| Amber: kanban board | 871 | 7 | 18 | 586 |
|---|
| OKSO T1: 3D landing page | 0 | 0 | 0 | 740 |
|---|
| Small Scale: conference | 0 | 0 | 0 | 327 |
|---|
| Kill Switch: subscription tracker | 0 | 0 | 0 | 367 |
|---|
| Halftone: lighting studio | 0 | 0 | 0 | 355 |
|---|
| Short: link shortener | 891 | 12 | 11 | 598 |
|---|
| Card Index: notes with search | 2,027 | 32 | 19 | 883 |
|---|
| Pixel Wall: a shared canvas | 2,715 | 77 | 16 | 923 |
|---|
| Raft KV: a key-value store on Raft | 2,646 | 27 | 13 | 478 |
|---|
| Rooms: realtime chat and board | 1,822 | 48 | 7 | 804 |
|---|
| Pulse: uptime monitor | 1,445 | 18 | 15 | 667 |
|---|
Stack
Language and server
- Gostandard library: net/http, embed, log/slog, context
- REST / JSONAPIs behind a Bearer token or a session, errors as {"error": ...}
- SSElive dashboards in the monitor and the job queue
- WebSocketown RFC 6455 implementation in realtime-rooms
Data
- SQLite (modernc.org/sqlite)pure Go, no CGO, WAL mode
- SQL (no ORM)atomic UPDATE … RETURNING, partial UNIQUE indexes, transactions
Front end
- HTML, CSS, vanilla JSno frameworks in the learning projects, embedded in the binary
- Canvasthe shared board in realtime-rooms
Quality and delivery
- go vet, gofmt, go testchecked in CI; go test -race runs in CI
- GitHub ActionsCI in the project repositories
- Dockermulti-stage images for the projects
- Prometheusjob queue metrics on /metrics in the text format
What is not here
- I do not claim experience beyond what is shown here: front-end frameworks, ORMs, Kubernetes and cloud platforms are not part of it.
- No distributed systems: every service is designed for a single process and a single SQLite file.