← All open source projects

ManimGL

3b1b/manim

ManimGL is 3Blue1Brown’s Python engine for programmatically creating mathematical animations and explanatory videos.

Forks 7,302
Author 3b1b
Language Python
License MIT
Synced 2026-06-10

What it is

ManimGL is a Python engine for programmatic animation, especially mathematical animation. It is associated with 3Blue1Brown and began as a personal tool for videos where formulas, graphs, geometry, and transitions are built from code.

It should not be confused with Manim Community Edition. The README explains the split: `3b1b/manim` is ManimGL, while the community edition is a separate fork focused on stability, testing, and easier onboarding.

What is inside

The repository contains Python code for scenes, objects, cameras, animations, rendering, examples, and installation instructions. FFmpeg and LaTeX are commonly needed because the project renders video and mathematical text.

ManimGL is useful when animation should be described as code: create an object, transform it, show a formula, move a camera, plot a graph, or build a geometric construction.

Minimal scene

This example shows the Manim style: a scene is a Python class, and objects and animations are added through commands.

Language: Python
from manimlib import *

class HelloManim(Scene):
    def construct(self):
        text = Text("Manim")
        self.play(Write(text))
        self.wait()

Strengths

The strength is precision and repeatability. For explanatory video, formulas and motion can be changed as code instead of moved manually on a timeline. It fits math visualization, educational videos, and geometry experiments.

Limits

The limitation is the learning curve. Users need Python, rendering dependencies, LaTeX, and scene structure. For a simple video, a video editor is faster. ManimGL shines when animation is tied to math, algorithms, or repeatable visual rules.