🎯

manimce-best-practices

🎯Skill

A guide that helps your AI assistant write correct code for Manim Community, a Python tool for making math and diagram animation videos. It covers scenes, shapes, formulas, graphs, 3D views, camera moves and rendering commands.

adithya-s-k/manim_skill2,822 Installs554Last Updated Jan 23, 2026

Installation

$npx skills add adithya-s-k/manim_skill --skill manimce-best-practices

Run it in a terminal; it asks which AI coding tools to install it for (Claude Code, Codex, Cursor and more).

Uses skills.sh Β· Node.js 22.20+

After installing

Ask for related work and the agent uses it on its own, or call it yourself.

Run it (Claude Code)/manimce-best-practices
Install by hand

Copy the whole skill folder from GitHub to the place below. Copying only SKILL.md can leave out files the skill uses.

Open the skill folder β†’
  • This project .claude/skills/manimce-best-practices/
  • All projects ~/.claude/skills/manimce-best-practices/

These paths are for Claude Code. For other tools, the command above puts it in the right place.

What this skill does

Overview

This skill teaches your AI assistant how to use Manim Community Edition (ManimCE). ManimCE is a free Python library for making animated videos, often used for math lessons. The skill turns on when you mention Manim or your code uses from manim import *.

Key Features

  • Get guidance on building a scene, which is one animated clip defined in a Python class.
  • Animate shapes, text and math formulas written in LaTeX, a common format for math notation.
  • Plot graphs on axes and build 3D scenes with a rotating camera.
  • Start from ready-made templates and tested example files.
  • Render videos with the manim command at low, high or 4K quality, or as a GIF.

Who is this for?

It suits teachers, students and creators who want to explain ideas with animated visuals. It also helps anyone who keeps mixing up ManimCE with the older ManimGL version. The skill points out the differences so your code runs with the right one.

Summarized by AI from this skill's SKILL.md. Suggest a better one

Trigger when: (1) User mentions "manim" or "Manim Community" or "ManimCE", (2) Code contains `from manim import *`, (3) User runs `manim` CLI commands, (4) Working with Scene, MathTex, Create(), or ManimCE-specific classes. Best practices for Manim Community Edition - the community-maintained Python animation engine. Covers Scene structure, animations, LaTeX/MathTex, 3D with ThreeDScene, camera control, styling, and CLI usage. NOT for ManimGL/3b1b version (which uses `manimlib` imports and `manimgl` CLI).

How to use

Read individual rule files for detailed explanations and code examples:

Core Concepts

Creation & Transformation

Text & Math

Styling & Appearance

Positioning & Layout

Coordinate Systems & Graphing

Animation Control

Configuration & CLI

Shapes & Geometry

  • rules/shapes.md - Circle, Square, Rectangle, Polygon, and geometric primitives
  • rules/lines.md - Line, Arrow, Vector, DashedLine, and connectors

Working Examples

Complete, tested example files demonstrating common patterns:

Scene Templates

Copy and modify these templates to start new projects:

Quick Reference

Basic Scene Structure

from manim import *

class MyScene(Scene):
    def construct(self):
        # Create mobjects
        circle = Circle()

        # Add to scene (static)
        self.add(circle)

        # Or animate
        self.play(Create(circle))

        # Wait
        self.wait(1)

Render Command

# Basic render with preview
manim -pql scene.py MyScene

# Quality flags: -ql (low), -qm (medium), -qh (high), -qk (4k)
manim -pqh scene.py MyScene

Key Differences from 3b1b/ManimGL

FeatureManim Community3b1b/ManimGL
Importfrom manim import *from manimlib import *
CLImanimmanimgl
Math textMathTex(r"\pi")Tex(R"\pi")
SceneSceneInteractiveScene
Packagemanim (PyPI)manimgl (PyPI)

Jupyter Notebook Support

Use the %%manim cell magic:

%%manim -qm MyScene
class MyScene(Scene):
    def construct(self):
        self.play(Create(Circle()))

Common Pitfalls to Avoid

  1. Version confusion - Ensure you're using manim (Community), not manimgl (3b1b version)
  2. Check imports - from manim import * is ManimCE; from manimlib import * is ManimGL
  3. Outdated tutorials - Video tutorials may be outdated; prefer official documentation
  4. manimpango issues - If text rendering fails, check manimpango installation requirements
  5. PATH issues (Windows) - If manim command not found, use python -m manim or check PATH

Installation

# Install Manim Community
pip install manim

# Check installation
manim checkhealth

Useful Commands

manim -pql scene.py Scene    # Preview low quality (development)
manim -pqh scene.py Scene    # Preview high quality
manim --format gif scene.py  # Output as GIF
manim checkhealth            # Verify installation
manim plugins -l             # List plugins

More from this repository2