yamlreel
2026
Role
Creator and maintainer: open-source Python tool
Overview
yamlreel is for developers who want a launch video, a system-design explainer or a code tip without opening a video editor.
A spec lists scenes such as a typed hook, a code walkthrough, an animated diagram, bullets, a big number or a screenshot of a page, and the tool renders every frame itself.
It makes landscape, vertical and square versions, generates its own koto-style background music, and can add a voiceover from a local text-to-speech server.
Defaults such as theme, watermark and music live in a config file, so anyone can adapt it by changing config.
A spec is treated as untrusted input, which matters because specs name files and URLs.
Responsibilities
- Built the renderer in Python with Pillow and NumPy, drawing each frame in code and piping raw frames to ffmpeg for H.264 and AAC output.
- Designed seven scene types (title, typed line, screenshot, diagram, bullets, code, big number) with eased reveals, captions and a name watermark.
- Added layered configuration: built-in defaults, user config, project config, the spec and command-line flags, with custom themes.
- Hardened it against hostile specs: files stay inside allowed folders, symlinks cannot escape, internal network addresses are refused, and page captures resolve each host once and connect to that exact address.
- Added optional voiceover, where each scene can speak its own text or the text shown on screen, and the scene stretches to fit the speech.
- Wrote an automated test suite and a CI workflow, and reviewed the code against a security-audit checklist before publishing.