This repository contains a curated collection of algorithmic, scientific, and mathematical animations built using Manim Community Edition. Each animation brings a concept to life — from pathfinding to cryptography to complex 3D topologies — with the goal of making learning visual, engaging, and open source.
Watch the Youtube playlist here!
Inside the animations/
folder, each Python script represents one standalone visual experiment. Each script is accompanied by:
README.md
that explains the conceptPython is a powerful, modern tool, easy-to-learn, and versatile programming language widely used for web development, data analysis, automation, artificial intelligence, scientific computing, and more. Its clear syntax and large ecosystem of libraries like Manim, Plotly, Seaborn, and Matplotlib make it a popular choice for beginners and professionals alike.
sudo apt update
sudo apt install python3 python3-pip
sudo dnf install python3 python3-pip
brew install python
Manim (Mathematical Animation Engine) is a robust Python-based library designed for crafting accurate, high-resolution mathematical and scientific animations. Although it gained popularity through 3Blue1Brown’s educational YouTube channel, Manim is also a versatile tool for illustrating complex ideas in physics, computer science, engineering, and data science.
Creating animations for technical topics can often be time-consuming and difficult, especially when precision is essential. Manim addresses this by allowing developers to generate animations programmatically using Python, enabling fine-grained control over each visual element. This precision helps educators and content creators deliver clear, visually engaging explanations of abstract or complex subjects.
choco install ffmpeg
3 Install Manim
Install via pip
pip install manim
manim -h
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install ffmpeg
4 Install Manim
pip install manim
sudo apt update
sudo apt install ffmpeg python3-pip python3-venv
python3 -m venv manim_env
source manim_env/bin/activate
pip install manim
In this sections, a list of animations and how they are created are outlined with links to the slides detailing every step needed for a fully created animation The animations are grouped into different categories including algorithms and data structures, ……..
Algorithms are step-by-step procedures for solving problems or performing tasks. Key categories include:
Sorting (QuickSort, MergeSort): Arrange data in order.
Searching (Binary Search): Find elements in data.
Traversal (DFS, BFS): Navigate structures like trees or graphs.
Dynamic Programming & Greedy: Optimize solutions to complex problems.
On the other hand, data structures are ways to organize and store data so it can be accessed and modified efficiently. Common types include:
Arrays & Lists: Store elements in order.
Stacks & Queues: Follow specific access rules (LIFO/FIFO).
Trees & Graphs: Represent hierarchical and networked data.
Hash Tables: Offer fast lookup using key-value pairs.
Open Command Prompt or PowerShell and run:
winget upgrade --all
Open Terminal and run:
sudo apt update && sudo apt upgrade
Open Terminal and run:
softwareupdate --all --install --force
Save your animation script in a file, for example:
filename.py
Ensure your class inside the script is named write your animation name here
(Manim uses this name to render the scene).
Use the Manim CLI to render the animation:
manim -pq<quality> filename.py
Replace <quality>
with your preferred rendering level.
Flag | Quality | Resolution | Speed | Best For |
---|---|---|---|---|
-pql | Low | 480p | Fast | Quick development previews |
-pqm | Medium | 720p | Moderate | Presentations |
-pqh | High | 1080p | Slower | Final output |
Example – High Quality Render:
manim -pqh bfs.py BFSVisualization
-p
= preview after render-q
= qualityl, m, h
= low, medium, high respectivelyThe rendered video will be saved in a directory like:
media/videos/bfs/1080p60/
You can copy or move the output .mp4
file as per your need.
-pql
during development for faster rendering and to safe time. manim -p --format=mp4 --resolution=3840,2160 filename.py
Maintained with ❤️ by Omniacs.DAO – accelerating digital public goods through data.
🛠️ Keep public infrastructure thriving. Buy $IACS on Base — CA: 0x46e69Fa9059C3D5F8933CA5E993158568DC80EBf