3b1b/manim

Animation engine for explanatory math videos

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 5 minutes ago
Added to GitGenius on April 7th, 2026
Created on March 22nd, 2015
Open Issues & Pull Requests: 490 (+0)
Number of forks: 7,586
Total Stargazers: 92,053 (+3)
Total Subscribers: 950 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 12.1 days
Mean response time: 296.7 days
90th percentile: 1094.9 days
Tracked items: 144

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 6% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 462
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,706 days
Stale 30+ days: 460
Stale 90+ days: 456

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (196)
  • LaTeX (20)
  • SVG (11)
  • enhancement (2)
  • Text (1)
  • good first issue (1)

Most active issues this week

Detailed Description

Manim is an animation engine written in Python designed specifically for creating explanatory mathematics videos. The project originated as a personal tool developed by the creator of the 3Blue1Brown YouTube channel and has since spawned two distinct versions: this repository, known as ManimGL, which represents the original implementation, and a community edition maintained separately that prioritizes stability and community responsiveness.

The engine enables precise programmatic animation of mathematical concepts through Python code. Users write scripts that define scenes containing mathematical objects and animations, which manim then renders into video files. The system supports various animation types and object types suitable for mathematical visualization, from basic geometric shapes to complex mathematical diagrams. The rendering pipeline leverages OpenGL for graphics processing and requires FFmpeg for video encoding, with optional LaTeX support for rendering mathematical notation and text.

Installation requirements vary by operating system. On Windows, users need FFmpeg and a LaTeX distribution like MiKTeX. macOS users can install dependencies via Homebrew, with an option to use the lightweight BasicTeX instead of the full MacTeX bundle to reduce disk space requirements. Linux installations require Pango development headers in addition to FFmpeg and LaTeX. The package is distributed via pip under the name manimgl, distinguishing it from the community edition which uses the manim package name. Python 3.7 or higher is required.

The command-line interface provides several useful flags for workflow optimization. The -w flag writes rendered scenes to files, -o both writes and opens the result, -s skips to the final frame, -so saves the final frame as an image, -n allows jumping to specific animation numbers, and -f enables fullscreen playback. Configuration is managed through custom_config.yml files, allowing users to specify output directories, asset locations, and style preferences.

Documentation is available at 3b1b.github.io/manim, with a Chinese translation maintained by the manim-kindergarten community at docs.manim.org.cn. The manim-kindergarten project also maintains a sandbox repository containing additional utility classes and video code examples. The project operates under the MIT license and welcomes contributions, though the community edition is noted as having the more active contribution ecosystem with established testing and continuous integration infrastructure. The 3b1b/videos repository contains the complete source code for all 3Blue1Brown videos, providing practical examples of manim usage in production mathematical animation.