Post

Tech Education

How We Make Codemia's System Design Videos with openCanviz

Behind the scenes of Codemia's whiteboard explainer videos: why we built openCanviz, how a 21 minute system design video goes from a blog post to a narrated export, and the rules we learned about putting numbers and ideas on screen.
By Codemia • October 9, 2026

7 min read

A system design answer is a moving thing. A request travels, a queue fills, a cache misses, a replica falls behind. A static diagram freezes all of that into boxes and arrows, and the reader has to replay the motion in their head.

Video fixes that, but drawing a 20 minute whiteboard explainer by hand takes days, and redrawing it when a number changes takes days again. That cost is why we built openCanviz, and why Codemia's narrated system design videos are made with it.

To be upfront: openCanviz is built by the same team that builds Codemia. We made it for ourselves first. This post shows how we use it, including the parts we had to learn the hard way.

What we make with it

From blog post to video: the AI coding agent example

The AI coding agent video started as a Codemia blog post: How would you design an AI coding agent in a system design interview. Here is how it became a video.

1. Find the antagonist before drawing anything

Every good explainer has a problem that keeps getting in the way. For the coding agent it was simple: a real repository is around 500K tokens, and the model's context window is around 200K. The repo does not fit.

We introduced that mismatch in scene 5 and did not resolve it until scene 15. Ten scenes of the viewer knowing the agent cannot just "read the code" is what makes the solution land when it arrives.

2. Plan scenes, then beats

The finished video has 27 scenes and 96 beats. A scene is one idea on one board. A beat is one change on that board: a box appears, an arrow draws, a number turns red. Planning at the beat level is what keeps a frame from showing three new things at once.

3. Pick a scene shape for each idea

openCanviz builds scenes from reusable shapes rather than a blank canvas each time. Four of the shapes in this video were new, and we added them to the library so anyone can use them now:

  • Filter funnel. A stream of candidate files narrows through cheaper-to-costlier filters until what is left fits a budget box. This is the scene 15 payoff: 500K tokens of repo down to a 150K context budget.
  • Code loop. A short snippet types itself on and a highlight walks the loop body, so the classic agent while not done: loop is something you watch run.
  • Patch vs overwrite. A teammate edits the file while the agent's change is in flight. The patch is rejected cleanly; the overwrite silently deletes the teammate's line.
  • Oscillation gauge. An agent stuck flipping between two fixes, with token spend climbing, until a circuit breaker trips and returns the best snapshot.

4. Narrate, then let the picture follow the voice

Each segment is voiced separately, never as one long take. The board then re-times itself to the narration, so a box appears when the narrator names it rather than on a fixed clock. In this video that stretched the intro from 11 seconds of animation to 32 seconds of speech, and shrank another scene from 54 seconds to 36.

5. Export, then check the actual frames

The export is a normal mp4. We then checked it the way a viewer would, frame by frame, not by trusting the plan. YouTube chapter timestamps came from measuring scene changes in the finished file, because the re-timing in step 4 makes the plan's timings wrong.

Rules we learned

Every number on screen comes from something that ran. In the Monolith vs Microservices short, the claim is that a network hop costs far more than a function call. We measured it rather than quoting a rule of thumb: on our test machine a function call took 66.2 ns and one local HTTP hop took 77.6 µs, more than a thousand times longer.

Build each idea from the viewer's question. One creator we work with put it well: don't tour a list of components, answer the question the viewer is already asking. "Does your laptop remember every server's IP? No, so we need DNS."

One sentence of caption at a time. Captions that dump a paragraph get skipped. Ours show one sentence, short enough to wrap in two lines.

A render that looks fine in the numbers can still be wrong. One of our videos passed every automated check, and the first frame review still found defects you could only see in the picture. Now someone looks at frames before anything ships.

Make one yourself

The scene shapes above are the same ones available in openCanviz to everyone. You can paste a doc or a prompt, review the scene plan, adjust any board, add a voice and export. There is a free plan, so you can see whether it suits your topic before paying.

If you teach, write documentation or explain systems for a living, try openCanviz.

And if you are here to prepare for a system design interview, watching is the easy half. The free system design problems on Codemia let you write your own design and get AI feedback on what you covered and what you missed.