Teo's blog

  1. Drawing 6,684 ideas in one dependency graph

    Starting from all 1,062 results in Rudin's analysis trilogy and growing to 6,684 ideas across 13 fields—how one dependency graph, a 3,500-line canvas runtime, 17 domain kits, and a headless Chromium verifier turn primary sources into interactive simulations.

    5 figures 4 min read Live atlas Source

  2. Rendering twenty-two hours of math from code

    Twenty-four feature-length math, physics, and ML films built without a timeline editor—how word-level voiceover bookmarks, a 222-token semantic palette, a 513-rule IPA lexicon, and a pixel-coverage scanner turn Python packages into 4K masters.

    5 figures 3 min read Channel Source

  3. Putting a trading desk behind a dashboard

    Inside FinOS-AgentLab—how a self-hosted finance workspace isolates its multi-agent trading desk, routes 138 tools without blowing the prompt budget, orders system messages for prefix caching, and tests its loop without an API key.

    7 figures 6 min read Source

  4. Porting San Andreas to a browser tab

    Recreating San Andreas inside a browser tab—how world streaming, the original mission bytecode VM, traffic braking arithmetic, and mobile memory budgets work, explored with live figures from the port's own code.

    7 figures 5 min read Live game Source

  5. Replaying a village raid

    A browser strategy game whose battle simulation never touches the screen—how target selection, A* wall weights, headless campaign sweeps, and bit-exact replays work under the hood.

    5 figures 4 min read Live game Source

  6. Compiling a xiangqi engine for the browser

    Compiling Pikafish from C++ to WebAssembly and serving its 53.7 MB neural network from a static host—with interactive boards for xiangqi's rules, traditional notation, 60-move clock, and perpetual-chase laws.

    6 figures 6 min read Live app Source

  7. Grading chess moves in a browser tab

    Stockfish 18 inside a browser tab—how web-chess sizes its worker pool, translates engine evaluations into verdicts a human player can use, and makes its weakest level play badly on purpose without hanging its queen.

    6 figures 5 min read Live app Source

  8. Putting KataGo in a browser tab

    Running KataGo's neural network and tree search inside a browser tab with no server behind it—how the worker boundary, backend fallbacks, golden tests, PUCT search, and territory swing map fit together.

    5 figures 6 min read Live app Source