Hand-drawn upper-body portrait of Hatsune Miku

Hello, I'mBolt Guo.

I'm a frontend developer. I build tools that help me learn or solve a problem, and I usually handle the design and code myself.

Away from the keyboard, I'm playing games, watching anime, or making an already-long playlist even longer.

FrontendLearning toolsIndie products
Hand-drawn Waku Waku Anya Forger
scroll

How I build

How I learn

I don't take notes. I build them.

Reading gives me the shape of an idea. It clicks only after I can change an input, step through the result, and see where my mental model breaks.

That's how a small binary-search demo turned into VizLearn. I took the same approach with my React and Vue notes: each concept became something I could run and inspect.

The bugs are useful. They show me what I don't understand yet.

What I ship

Most projects start with one annoyance.

Sometimes it's a watermark I want to remove without uploading the image. Sometimes it's a QR code I want on my Lock Screen. I build the smallest useful version first, then see if the idea deserves more.

I take each project from interface to release myself. After living with it for a while, I keep the parts worth maintaining and cut the rest.

If a project solves the problem and has nothing else to prove, I leave it alone.

What I've built

Projects

Two projects I'd show you first.

  • AlgorithmsAI & CS

    VizLearn

    Change an input and step through what happens next. The code, visualization, and execution log stay in sync, so the result never feels like a magic trick.

    Free to use in the browser, with lessons on algorithms, AI, and computer science.

    Open VizLearn
  • ExpoCloudflareLocal-first

    KanaPlanet

    I couldn't find a Japanese-learning tool that felt right, so I built the whole thing: CSV as the content source of truth, TTS audio, KanjiVG stroke order, an SRS review engine, pronunciation scoring, and AI conversations for real-life situations.

    It doesn't promise a test score. I built it to help me actually use Japanese. One Expo monorepo compiles the same application logic for two targets: a native iOS app and a web app deployed to Cloudflare's edge. A local-first data layer keeps them in sync.

    Open KanaPlanet

Say hello