finds.dev← search

// the find

3b1b/manim

★ 94,445 · Python · MIT · updated Sep 2026

Animation engine for explanatory math videos

ManimGL is the personal animation engine 3Blue1Brown uses to build his math videos, built on a custom GPU renderer (WGSL shaders) with a mobject/scene/animation object model. It's for people who want the exact tool behind those videos and don't mind rough edges, not for people who want a stable, documented animation library — that's the ManimCommunity fork.

Real GPU rendering via hand-written WGSL shaders (manimlib/renderer, manimlib/shaders) instead of just calling out to a rasterizer, which enables the interactive preview window and live scene embedding workflow rather than pure render-and-wait. The mobject/animation split is genuinely composable — updaters, value trackers, TransformMatchingParts — so once you learn the vocabulary, nontrivial math animations are short to write. It's the ground-truth implementation for 3blue1brown's actual videos, so if you're trying to reproduce an effect you saw in one of them, this is the real code, not a reinterpretation.

The README itself admits this is the personal fork and routes contributors to ManimCommunity/manim for anything resembling CI, testing, or responsive review — the tests/ directory here is a handful of ad hoc scripts, not a suite. No API stability guarantee: the README flags that old video code may break on newer manim, with no changelog or semver discipline to tell you what changed. Install is heavy and OS-fragile — FFmpeg, OpenGL, LaTeX (full MacTeX or MiKTeX), Pango, and on ARM Macs a separate Cairo install, each with its own documented workaround in the README, which is a signal those workarounds are frequently needed. Docs are explicitly 'in progress,' so for anything beyond the example scenes you're reading source.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →