Simon Willison's Markdown-SVG Renderer Now Compiles MP4 in Your Browser
A single-file tool for pasting Markdown with embedded SVG just picked up in-browser video export via ffmpeg.wasm — a small but instructive example of how far client-only tooling has come.
By TRAGenX Desk
A Markdown renderer that also compiles video
Simon Willison has been quietly expanding a small utility called markdown-svg-renderer since May 2026. Its job is narrow: paste in Markdown that contains SVG code blocks, and it renders those blocks as actual graphics instead of raw XML. Willison built it, by his own account, to solve a recurring problem in his own writing — sharing transcripts of AI-generated SVG art, including his running series of pelicans riding bicycles, a prompt he uses to informally benchmark how well a model handles spatial reasoning.
The interesting part isn't the pelicans, though — it's what the tool has grown into. Each rendered SVG block now shows in tabs for Rendered, PNG, JPEG, MP4, and raw Code, so a single paste gives you both the visual and exportable assets without opening a design tool.
The ffmpeg.wasm detail worth noticing
The newest addition is video export: if an SVG contains CSS or SMIL animation, the tool estimates its duration, renders it frame by frame, and hands those frames to ffmpeg.wasm to compile an MP4 — all inside the browser tab, no server round-trip. That's a meaningful technical choice. ffmpeg.wasm ports a full video encoder to WebAssembly, which means a tool with zero backend can still do work that would normally require a media-processing service. For anyone building developer tooling, it's a useful reminder of how much used to require server infrastructure can now just... run client-side.
- Paste Markdown directly, or point the tool at a CORS-friendly URL or GitHub Gist
- SVG blocks render inline with tabs for Rendered / PNG / JPEG / MP4 / Code
- Loading from a Gist produces a bookmarkable URL — e.g.
markdown-svg-renderer#url=https://gist.github.com/...— that reproduces the exact render for anyone who opens the link - The whole tool lives in Willison's public tools repo alongside dozens of similar single-purpose utilities
Why this is worth a builder's attention
Willison's tools repo is a good case study in a pattern that's become common practice for people who write a lot of code with LLM assistance: small, static, single-file utilities that get built, shipped, and iterated on in hours rather than sprints, with no deployment pipeline beyond static hosting. There's no database, no auth, no server cost — state lives in the URL itself. That's not a novel architecture, but it's a useful default to reach for when the alternative is standing up infrastructure for something that's really just a rendering problem.
It's also a small signal of where browser capability has landed: WebAssembly-compiled tools like ffmpeg.wasm mean 'client-side only' is no longer a meaningful constraint for a growing set of workloads that used to force a backend decision by default.
FAQ
Frequently asked questions
- What is markdown-svg-renderer?
- It's a free browser tool by Simon Willison that renders Markdown documents containing embedded SVG code blocks as actual graphics, with export options for PNG, JPEG, and MP4.
- How does the MP4 export work without a server?
- The tool uses ffmpeg.wasm, a WebAssembly build of the ffmpeg video encoder, to render animation frames and compile them into an MP4 entirely inside the browser tab.
- Can I share a rendered document with someone else?
- Yes — if you load the Markdown from a CORS-friendly URL or GitHub Gist, the tool generates a bookmarkable link that reproduces the same render for anyone who opens it.
Sources
- Markdown-SVG upgrades — Simon Willison
- markdown-svg-renderer tool — tools.simonwillison.net
- simonw/tools GitHub repository — GitHub