Systems
Three systems, up close
Three projects, each with something you can actually poke at. The full write-ups live in the repos.
DeepCS
In buildA CS-fundamentals question bank where two people get matched and solve the same question together in real time.
- Stage
- Design locked, building now
- Role
- Solo, design and build
- Stack
- TypeScript · Fastify · Yjs · PostgreSQL · Redis · Cloud Run
- Doc
- 9 ADRs, every build-vs-buy call tagged
This is the design, not a live system. You won't find any performance numbers here, because there is nothing deployed to measure yet.
How the six services fit together
hover a service, or watch a request travelHover any service to see what it owns, or press play to watch a request travel through the system.
Swipe the diagram to see all six
Pick a request path, or hover any service to see what it owns.
The race I built a gateway to understand
a simulation, running in your browserTwo servers share one budget of requests. Switch to read-then-write and hit burst to watch them both let a request through that only one of them could pay for.
Two people, two servers, one document
a real CRDT, running in this pageTwo people, two servers, no shared memory. Type in both at once, drop a connection, drag the latency slider. They still end up with the same document.
pub/sub
Nine architecture decision records live in DESIGN.md, including why I built the gateway instead of using Kong, and why auth is the one thing I paid for.
Recall
DesignedA search engine over a semester of my own notes that answers with cited sources, and refuses when retrieval confidence is low.
- Stage
- Build plan written, code not started
- Role
- Solo, design and build
- Stack
- Go · Python (ingest) · Docker
- Rule
- Real numbers only, failures included
Recall isn't built yet. The search box below is real BM25 running in your browser over nine sample chunks. The real thing will do this in Go, over my own notes.
How a question becomes ranked results
real BM25, scored liveType a question and watch it get taken apart, looked up, and scored. Try the pizza one to see it refuse rather than invent an answer.
Nothing in the index is about pizza, so everything scores too low and it refuses.
The full build order, from ingest through sharding, is in PLAN.md.
Airlock
Shipped 1st placeA safety gate between an AI coding agent and every package it tries to install. Each install is detonated in a disposable sandbox before it touches the machine.
- Stage
- Built and working
- Result
- 1st place, Daytona HackSprint · NUS Singapore · Jul 2026
- Role
- Weekend team build. A teammate and I shaped the concept and system design
- Stack
- Python · Daytona · Nosana · Doubleword · Oxylabs · ai&
This one is real code. The verdict below is the actual output from the repo, replayed slowly enough to read. The timings are for pacing, not measurements.
How Airlock makes up its mind
recorded verdict, replayed
An agent tries to install python-pillow, a fake built to look like the real
pillow. Airlock runs it somewhere disposable, reads it, then decides.
Next
Want to know more about me?
Where I study, what I teach, and how I got here.