There is a newer version of the record available.

Published February 21, 2026 | Version v0.20.0

Manim – Mathematical Animation Framework

Description

<!-- Release notes generated using configuration in .github/release.yml at main -->

See our rendered changelog.

What's Changed

Breaking Changes 🚨

  • Fix ImageMobject 3D rotation/flipping and remove resampling algorithms lanczos (antialias), box and hamming by @chopan050 in https://github.com/ManimCommunity/manim/pull/4266
  • Fix YELLOW_C and add PURE_CYAN, PURE_MAGENTA and PURE_YELLOW by @chopan050 in https://github.com/ManimCommunity/manim/pull/4562

Highlights 🌟

  • Rewrite MathTex to make it more robust regarding splitting by @henrikmidtiby in https://github.com/ManimCommunity/manim/pull/4515
  • Add new Animation Builder Mobject.always by @JasonGrace2282 in https://github.com/ManimCommunity/manim/pull/4594

New Features ✨

  • Add a seed config option + --seed CLI option for reproducible randomness in rendered scenes by @arnaud-ma in https://github.com/ManimCommunity/manim/pull/4532

Enhancements πŸš€

  • Enable strict=True for zip() where safe by @Oll-iver in https://github.com/ManimCommunity/manim/pull/4547

Bug Fixes πŸ›

  • using color instead of fill_color with MathTeX for node labels by @Schefflera-Arboricola in https://github.com/ManimCommunity/manim/pull/4501
  • fix: infinite recursion caused by accessing color of a highlighted Ta… by @BHearron in https://github.com/ManimCommunity/manim/pull/4435
  • Prevent potential UnboundLocalError in PolarPlane by @RinZ27 in https://github.com/ManimCommunity/manim/pull/4557
  • Fixed division by 0 in "turn_animation_into_updater" by @SoldierSacha in https://github.com/ManimCommunity/manim/pull/4567
  • Fix TOCTOU Race Conditions when creating directories by @SoldierSacha in https://github.com/ManimCommunity/manim/pull/4587
  • Resolve more race conditions potentially happening during directory creation by @SoldierSacha in https://github.com/ManimCommunity/manim/pull/4589
  • Fix c2p/coords_to_point with single flat list or 1D array input by @danielalanbates in https://github.com/ManimCommunity/manim/pull/4596

Documentation πŸ“š

  • Enable rendered documentation of RandomColorGenerator by @arnaud-ma in https://github.com/ManimCommunity/manim/pull/4533
  • Remove pin to Python 3.13 in installation docs by @chopan050 in https://github.com/ManimCommunity/manim/pull/4534
  • Fix broken aquabeam OpenGL link using Wayback Machine by @behackl in https://github.com/ManimCommunity/manim/pull/4545
  • Add type annotations and docstrings in opengl_renderer.py by @arnaud-ma in https://github.com/ManimCommunity/manim/pull/4537
  • docs: improve TransformFromCopy docstring by @GoThrones in https://github.com/ManimCommunity/manim/pull/4597

Infrastructure & Build πŸ”¨

  • Install missing dependencies in release pipeline by @behackl in https://github.com/ManimCommunity/manim/pull/4531

Code Quality & Refactoring 🧹

  • Rework and consolidate release changelog script, add previously skipped changelog entries by @behackl in https://github.com/ManimCommunity/manim/pull/4568
  • Remove future.annotations from required imports by @JasonGrace2282 in https://github.com/ManimCommunity/manim/pull/4571
  • Cleaned up mypy.ini by @henrikmidtiby in https://github.com/ManimCommunity/manim/pull/4584
  • Add py.typed to declare manim as having type hints by @Timmmm in https://github.com/ManimCommunity/manim/pull/4553
  • Fix assertion in ImageMobjectFromCamera.interpolate_color() by @chopan050 in https://github.com/ManimCommunity/manim/pull/4593
  • Reduce dependency on scipy - replace scipy.special.comb with math.comb by @fmuenkel in https://github.com/ManimCommunity/manim/pull/4598

Type Hints πŸ“

  • Add type annotations to rotation.py by @fmuenkel in https://github.com/ManimCommunity/manim/pull/4535
  • Add type annotations to opengl_compatibility.py by @fmuenkel in https://github.com/ManimCommunity/manim/pull/4585
  • Add type annotations to image_mobject.py by @henrikmidtiby in https://github.com/ManimCommunity/manim/pull/4458
  • Add type annotations to opengl_image_mobject.py by @fmuenkel in https://github.com/ManimCommunity/manim/pull/4536
  • Add type annotations to point_cloud_mobject.py by @fmuenkel in https://github.com/ManimCommunity/manim/pull/4586

New Contributors

  • @arnaud-ma made their first contribution in https://github.com/ManimCommunity/manim/pull/4533
  • @Schefflera-Arboricola made their first contribution in https://github.com/ManimCommunity/manim/pull/4501
  • @BHearron made their first contribution in https://github.com/ManimCommunity/manim/pull/4435
  • @RinZ27 made their first contribution in https://github.com/ManimCommunity/manim/pull/4557
  • @SoldierSacha made their first contribution in https://github.com/ManimCommunity/manim/pull/4567
  • @Oll-iver made their first contribution in https://github.com/ManimCommunity/manim/pull/4547
  • @GoThrones made their first contribution in https://github.com/ManimCommunity/manim/pull/4597
  • @danielalanbates made their first contribution in https://github.com/ManimCommunity/manim/pull/4596

Full Changelog: https://github.com/ManimCommunity/manim/compare/v0.19.2...v0.20.0

Notes

We acknowledge the importance of good software to support research, and we note that research becomes more valuable when it is communicated effectively. To demonstrate the value of Manim, we ask that you cite Manim in your work.

Files

ManimCommunity/manim-v0.20.0.zip

Files (7.5 MB)

Name Size Download all
md5:cd9ebaacbeb07a1909cb82d095a1281a
7.5 MB Preview Download

Additional details

Related works