
Manim Video
Generate Manim Python scenes to produce explainer animations and motion graphics for docs, demos, and educational content.
Overview
Manim Video is an agent skill for the Build phase that helps you author Manim Python scenes to render explainer animations and educational motion graphics.
Install
npx skills add https://github.com/affaan-m/everything-claude-code --skill manim-videoWhat is this skill?
- Author Manim Scene subclasses with shapes, labels, and curved arrows
- Compose titled explainers with on-screen subtitles and node-edge metaphors
- Uses core Manim primitives (Circle, Text, VGroup, Create, FadeIn/FadeOut, CurvedArrow)
- Suited for short conceptual videos (e.g., graph or network optimization narratives)
- Python-first workflow aligned with programmatic animation pipelines
Adoption & trust: 3.2k installs on skills.sh; 210k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You need a polished conceptual video for docs or marketing but lack a repeatable code template to generate Manim animations with your agent.
Who is it for?
Indie builders comfortable with Python who want code-driven explainers (graphs, flows, math-style narratives) without a full design toolchain.
Skip if: Non-technical founders who need turnkey video editing, live-action production, or ASO-ready store assets without running Manim locally.
When should I use this skill?
User asks for Manim animations, programmatic explainers, or Python scene code for educational video output.
What do I get? / Deliverables
You receive runnable Manim scene code you can render into MP4-style outputs for tutorials, demos, or social clips.
- Manim Scene Python module ready to render
- Structured explainer layout (title, subtitles, animated graph elements)
Recommended Skills
Journey fit
Canonical shelf is Build because the skill’s artifact is executable Manim scene code that renders video output for product education—not distribution or analytics work. Docs subphase covers explainers, tutorials, and visual walkthroughs that ship alongside the product.
How it compares
Use as a programmatic animation template skill, not a browser-based screen recorder or generative image-only media tool.
Common Questions / FAQ
Who is manim-video for?
Developers and technical solo founders who already use or can install Manim and want agent-generated scene code for explainers.
When should I use manim-video?
During Build when creating docs, course clips, or demo videos that benefit from Manim scenes, labeled diagrams, and timed fades.
Is manim-video safe to install?
Check the Security Audits panel on this Prism page; the skill implies local Python execution and filesystem access for renders.
SKILL.md
READMESKILL.md - Manim Video
from manim import DOWN, LEFT, RIGHT, UP, Circle, Create, FadeIn, FadeOut, Scene, Text, VGroup, CurvedArrow class NetworkGraphExplainer(Scene): def construct(self): title = Text("Connections Optimizer", font_size=40).to_edge(UP) subtitle = Text("Prune low-signal follows. Strengthen warm paths.", font_size=20).next_to(title, DOWN) you = Circle(radius=0.45, color="#4F8EF7").shift(LEFT * 4 + DOWN * 0.5) you_label = Text("You", font_size=22).move_to(you.get_center()) stale_a = Circle(radius=0.32, color="#7A7A7A").shift(LEFT * 1.6 + UP * 1.2) stale_b = Circle(radius=0.32, color="#7A7A7A").shift(LEFT * 1.2 + DOWN * 1.4) bridge = Circle(radius=0.38, color="#21A179").shift(RIGHT * 0.2 + UP * 0.2) target = Circle(radius=0.42, color="#FF9F1C").shift(RIGHT * 3.2 + UP * 0.7) new_target = Circle(radius=0.42, color="#FF9F1C").shift(RIGHT * 3.0 + DOWN * 1.4) stale_a_label = Text("stale", font_size=18).move_to(stale_a.get_center()) stale_b_label = Text("noise", font_size=18).move_to(stale_b.get_center()) bridge_label = Text("bridge", font_size=18).move_to(bridge.get_center()) target_label = Text("target", font_size=18).move_to(target.get_center()) new_target_label = Text("add", font_size=18).move_to(new_target.get_center()) edge_stale_a = CurvedArrow(you.get_right(), stale_a.get_left(), angle=0.2, color="#7A7A7A") edge_stale_b = CurvedArrow(you.get_right(), stale_b.get_left(), angle=-0.2, color="#7A7A7A") edge_bridge = CurvedArrow(you.get_right(), bridge.get_left(), angle=0.0, color="#21A179") edge_target = CurvedArrow(bridge.get_right(), target.get_left(), angle=0.1, color="#21A179") edge_new_target = CurvedArrow(bridge.get_right(), new_target.get_left(), angle=-0.12, color="#21A179") self.play(FadeIn(title), FadeIn(subtitle)) self.play( Create(you), FadeIn(you_label), Create(stale_a), Create(stale_b), Create(bridge), Create(target), FadeIn(stale_a_label), FadeIn(stale_b_label), FadeIn(bridge_label), FadeIn(target_label), ) self.play(Create(edge_stale_a), Create(edge_stale_b), Create(edge_bridge), Create(edge_target)) optimize = Text("Optimize the graph", font_size=24).to_edge(DOWN) self.play(FadeIn(optimize)) self.play(FadeOut(stale_a), FadeOut(stale_b), FadeOut(stale_a_label), FadeOut(stale_b_label), FadeOut(edge_stale_a), FadeOut(edge_stale_b)) self.play(Create(new_target), FadeIn(new_target_label), Create(edge_new_target)) final_group = VGroup(you, you_label, bridge, bridge_label, target, target_label, new_target, new_target_label) self.play(final_group.animate.shift(UP * 0.1)) self.wait(1) --- name: manim-video description: Build reusable Manim explainers for technical concepts, graphs, system diagrams, and product walkthroughs, then hand off to the wider ECC video stack if needed. Use when the user wants a clean animated explainer rather than a generic talking-head script. origin: ECC --- # Manim Video Use Manim for technical explainers where motion, structure, and clarity matter more than photorealism. ## When to Activate - the user wants a technical explainer animation - the concept is a graph, workflow, architecture, metric progression, or system diagram - the user wants a short product or launch explainer for X or a landing page - the visual should feel precise instead of generically cinematic ## Tool Requirements - `manim` CLI for scene rendering - `ffmpeg` for post-processing if needed - `video-editing` for final assembly or polish - `remotion-video-creation` when the final package needs composited UI, captions, or additional motion layers ## Default Output - short 16:9 MP4 - one thumbnail or poster frame - storyboard plus scene plan ## Workflow 1. Defi