2026-01-05
Hello, world (again)
If you found this in a cat, you found the blog before the blog found you.
This site leads with a person and keeps a machine underneath. The homepage
introduces me in plain language — and further down there is a terminal you can
actually type into. neofetch, ls projects, cat about.md, and a few things
that bite back.
Why build it this way?
Because the interesting part isn't the content — it's the seam. The terminal is split into three layers that can each be swapped without touching the others:
- Presentation captures keystrokes and renders output. It talks to a controller interface and nothing else.
- Kernel parses, resolves and dispatches commands. Pure TypeScript — no DOM.
- Runtime actually executes. It started as an in-memory mock and now runs in a Web Worker; a real container over a WebSocket is the next step.
Adding a command is one file. Swapping the whole execution backend changed zero command files and zero UI components. That's the whole idea.
Now go type sudo rm -rf /. I dare you.