MCPInstall

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 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).

Installs
1.1K
Last 24h
+11
Trending rank
#8309
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/calesthio/openmontage --skill manimce-best-practices
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads manimce-best-practices automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

How to use

Read individual rule files for detailed explanations and code examples:

Core Concepts

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

Creation & Transformation

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

Text & Math

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

Styling & Appearance

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

Positioning & Layout

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

Coordinate Systems & Graphing

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

Animation Control

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

Configuration & CLI

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

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:

  • examples/basic_animations.py - Shape creation, text, lagged animations, path movement
  • examples/math_visualization.py - LaTeX equations, color-coded math, derivations
  • examples/updater_patterns.py - ValueTracker, dynamic animations, physics simulations
  • examples/graph_plotting.py - Axes, functions, areas, Riemann sums, polar plots
  • 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 - Standard 2D scene template
  • templates/camera_scene.py - MovingCameraScene with zoom/pan
  • 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

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

FAQ

What does the manimce-best-practices skill do?

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 do I install manimce-best-practices?

Run npx skills add https://github.com/calesthio/openmontage --skill manimce-best-practices in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/manimce-best-practices/ (personal) or .claude/skills/manimce-best-practices/ (project).

Which AI agents can use manimce-best-practices?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is manimce-best-practices safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains manimce-best-practices?

It is published by calesthio in calesthio/openmontage. It has 1,057 recorded installs.

More from calesthio/openmontage

View all →

video-edit

calesthio/openmontage

Edit videos locally using ffmpeg. Trim, concat, resize, speed, overlay, extract audio, compress, and convert. Use when: (1) Trimming or cutting video segments, (2) Concatenating multiple clips, (3) Resizing video for social platforms, (4) Extracting or replacing audio, (5) Compressing video, (6) Converting video formats, (7) Getting video info.

Media & Creative1.5K installs

video-understand

calesthio/openmontage

Understand video content locally using ffmpeg frame extraction and Whisper transcription. No API keys needed. Use when: (1) Understanding what a video contains, (2) Transcribing video audio locally, (3) Extracting key frames for visual analysis, (4) Getting video content without API keys.

Media & Creative1.4K installs

svg-character-animation

calesthio/openmontage

Animate SVG character rigs with GSAP, CSS transforms, Remotion frame control, and HyperFrames-compatible browser previews.

Frontend & Design1.3K installs

ai-video-gen

calesthio/openmontage

Generate AI videos from text prompts using multiple provider gateways. Use when: (1) Generating videos from text descriptions, (2) Creating AI-generated video clips for content production, (3) Image-to-video generation with a reference image, (4) Choosing between video generation providers (VEO, Kling, Sora, Runway, Seedance, MiniMax, Gemini Omni). Supports gateways: HeyGen API, fal.ai API, Kling official direct API, and the Gemini API (Gemini Omni Flash).

Media & Creative1.2K installs

video-download

calesthio/openmontage

Download video and audio from YouTube and 1000+ sites using yt-dlp. No API keys needed. Use when: (1) Downloading a video from YouTube or other sites, (2) Extracting audio from a video URL, (3) Downloading subtitles/captions from a video, (4) Getting video metadata without downloading.

Media & Creative1.2K installs

remotion

calesthio/openmontage

Toolkit-specific Remotion patterns — custom transitions, shared components, and project conventions. For core Remotion framework knowledge (hooks, animations, rendering, etc.), see the remotion-official skill.

Media & Creative1.2K installs

Popular code quality & workflow skills

View category →

grill-me

mattpocock/skills

A relentless interview to sharpen a plan or design.

Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.

handoff

mattpocock/skills

Compact the current conversation into a handoff document for another agent to pick up.

domain-modeling

mattpocock/skills

Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.

codebase-design

mattpocock/skills

Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.

diagnosing-bugs

mattpocock/skills

Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.