Skip to content
Video & Audio
Skill

/manimce-best-practices

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

From plugin
openmontage
80k49 skills4 commands

Claude Code

$ npx -y skills add openmontageinc/openmontage --skill manimce-best-practices --agent claude-code

SKILL.md

manimce-best-practices.SKILL.md
name: manimce-best-practices
description: |
  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

  • [rules/scenes.md](rules/scenes.md) - Scene structure, construct method, and scene types
  • [rules/mobjects.md](rules/mobjects.md) - Mobject types, VMobject, Groups, and positioning
  • [rules/animations.md](rules/animations.md) - Animation classes, playing animations, and timing

Creation & Transformation

  • [rules/creation-animations.md](rules/creation-animations.md) - Create, Write, FadeIn, DrawBorderThenFill
  • [rules/transform-animations.md](rules/transform-animations.md) - Transform, ReplacementTransform, morphing
  • [rules/animation-groups.md](rules/animation-groups.md) - AnimationGroup, LaggedStart, Succession

Text & Math

  • [rules/text.md](rules/text.md) - Text mobjects, fonts, and styling
  • [rules/latex.md](rules/latex.md) - MathTex, Tex, LaTeX rendering, and coloring formulas
  • [rules/text-animations.md](rules/text-animations.md) - Write, AddTextLetterByLetter, TypeWithCursor

Styling & Appearance

  • [rules/colors.md](rules/colors.md) - Color constants, gradients, and color manipulation
  • [rules/styling.md](rules/styling.md) - Fill, stroke, opacity, and visual properties

Positioning & Layout

  • [rules/positioning.md](rules/positioning.md) - move_to, next_to, align_to, shift methods
  • [rules/grouping.md](rules/grouping.md) - VGroup, Group, arrange, and layout patterns

Coordinate Systems & Graphing

  • [rules/axes.md](rules/axes.md) - Axes, NumberPlane, coordinate systems
  • [rules/graphing.md](rules/graphing.md) - Plotting functions, parametric curves
  • [rules/3d.md](rules/3d.md) - ThreeDScene, 3D axes, surfaces, camera orientation

Animation Control

  • [rules/timing.md](rules/timing.md) - Rate functions, easing, run_time, lag_ratio
  • [rules/updaters.md](rules/updaters.md) - Updaters, ValueTracker, dynamic animations
  • [rules/camera.md](rules/camera.md) - MovingCameraScene, zoom, pan, frame manipulation

Configuration & CLI

  • [rules/cli.md](rules/cli.md) - Command-line interface, rendering options, quality flags
  • [rules/config.md](rules/config.md) - Configuration system, manim.cfg, settings

Shapes & Geometry

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

Working Examples

Complete, tested example files demonstrating common patterns:

  • [examples/basic_animations.py](examples/basic_animations.py) - Shape creation, text, lagged animations, path movement
  • [examples/math_visualization.py](examples/math_visualization.py) - LaTeX equations, color-coded math, derivations
  • [examples/updater_patterns.py](examples/updater_patterns.py) - ValueTracker, dynamic animations, physics simulations
  • [examples/graph_plotting.py](examples/graph_plotting.py) - Axes, functions, areas, Riemann sums, polar plots
  • [examples/3d_visualization.py](examples/3d_visualization.py) - ThreeDScene, surfaces, 3D camera, parametric curves

Scene Templates

Copy and modify these templates to start new projects:

  • [templates/basic_scene.py](templates/basic_scene.py) - Standard 2D scene template
  • [templates/camera_scene.py](templates/camera_scene.py) - MovingCameraScene with zoom/pan
  • [templates/threed_scene.py](templates/threed_scene.py) - 3D scene with surfaces and camera rotation

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

| Feature | Manim Community | 3b1b/ManimGL | |---------|-----------------|--------------| | Import | `from manim import *` | `from manimlib import *` | | CLI | `manim` | `manimgl` | | Math text | `MathTex(r"\pi")` | `Tex(R"\pi")` | | Scene | `Scene` | `InteractiveScene` | | Package | `manim` (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
Read more
@calesthio
Ships withopenmontage

World's first open-source, agentic video production system. 12 production pipelines, 100+ tools, 700+ agent skill and production-knowledge files. Turn your AI coding assistant into a full video production studio.

Stars on GitHub

Momentum

stars in total
80.1k
Star history of calesthio/OpenMontage on GitHub, a chart by star-history.com

Other skills on openmontage.

acestep

acestep

AI music generation with ACE-Step 1.5 — background music, vocal tracks, covers, stem extraction for video production. Use when…

agents

agents

Build voice AI agents with ElevenLabs. Use when creating voice assistants, customer service bots, interactive voice characters,…

ai-video-gen

ai-video-gen

Generate AI videos from text prompts using multiple provider gateways. Use when: (1) Generating videos from text descriptions,…

avatar-video

avatar-video

Create AI avatar videos with precise control over avatars, voices, scripts, scenes, and backgrounds using HeyGen's v2 API. Use…

azure-speech-to-text

azure-speech-to-text

Transcribe audio to text using Azure AI Speech (Fast Transcription REST API). Use when converting audio/video to text, generating…

More skills from other plugins.

captions-overlay

captions-overlay

Overlay doctrine for captions in HyperFrames videos — the caption MODEL (drop / rail / embed) and the rule that captions are an…

@heygen-com@heygen-comInstall Skill
seedance-antislop

seedance-antislop

This skill should be used when a Seedance 2.0 prompt contains generic AI filler, hollow superlatives, vague cinematic language,…

@emily2040@emily2040Install Skill

Questions about manimce-best-practices.

Which coding agents can use manimce-best-practices?
manimce-best-practices installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.