PluginBench
Skill
Pass
Audit score 90

manimce-best-practices

adithya-s-k/manim_skill

Best practices for Manim Community Edition animations, scenes, and LaTeX rendering.

What is manimce-best-practices?

Comprehensive guide for Manim Community Edition (ManimCE), the community-maintained Python animation engine. Covers Scene structure, Mobjects, animations, LaTeX/MathTex, 3D visualization, styling, positioning, and CLI usage. Use when working with `from manim import *` or `manim` CLI commands.

  • Structure scenes with construct() method and scene types (Scene, ThreeDScene, MovingCameraScene)
  • Create and animate Mobjects (shapes, text, math) with Create, Transform, FadeIn, and other animation classes
  • Render LaTeX/MathTex formulas with color coding and mathematical notation
  • Build 3D visualizations with ThreeDScene, surfaces, and camera control
  • Control timing, easing, and dynamic updates with rate functions, ValueTracker, and updaters
  • Position and group objects using move_to, next_to, align_to, VGroup, and layout patterns

How to install manimce-best-practices

npx skills add https://github.com/adithya-s-k/manim_skill --skill manimce-best-practices
Prerequisites
  • Python 3.7+
  • Manim Community Edition installed via `pip install manim`
  • LaTeX distribution (for MathTex/Tex rendering)
  • FFmpeg (for video output)
Claude Code
Cursor
Windsurf
Cline

How to use manimce-best-practices

  1. 1.Install Manim Community: `pip install manim`
  2. 2.Run `manim checkhealth` to verify installation and dependencies
  3. 3.Create a Python file with a Scene class inheriting from Scene or ThreeDScene
  4. 4.Define a `construct()` method with mobject creation and animation calls
  5. 5.Render with `manim -pql scene.py SceneClassName` (low quality preview) or `-pqh` (high quality)
  6. 6.Consult rule files (scenes.md, animations.md, latex.md, etc.) for specific patterns and examples

Use cases

Good for
  • Creating educational math animations with equations and step-by-step derivations
  • Visualizing functions, graphs, and parametric curves on coordinate systems
  • Building 3D geometric visualizations and surface plots
  • Animating shape transformations and morphing between objects
  • Rendering presentation slides with animated text and diagrams
Who it's for
  • Educators creating math and science visualizations
  • Content creators making educational videos
  • Researchers visualizing mathematical concepts
  • Students learning animation and visualization techniques
  • Developers building interactive educational tools

manimce-best-practices FAQ

What's the difference between Manim Community and ManimGL/3b1b version?

Manim Community uses `from manim import *` and `manim` CLI, while ManimGL uses `from manimlib import *` and `manimgl` CLI. They have different APIs and are separate packages. This skill covers Manim Community Edition only.

How do I render animations?

Use `manim -pql scene.py MyScene` for low-quality preview (fast), `-pqm` for medium, `-pqh` for high quality, or `-qk` for 4K. The `-p` flag opens the output automatically.

How do I render LaTeX math formulas?

Use `MathTex(r"\pi")` for math mode or `Tex()` for text mode. Ensure LaTeX is installed on your system. Color individual parts with `set_color()` or use `MathTex(...).set_color_by_tex()`.

What are updaters and when should I use them?

Updaters are functions that continuously modify mobjects during animation. Use them with `ValueTracker` for dynamic animations like physics simulations, graphs that follow a moving point, or any object that needs to change based on another object's state.

How do I create 3D visualizations?

Inherit from `ThreeDScene` instead of `Scene`, use `ThreeDAxes` for coordinate systems, and access camera control with `self.camera.frame`. See the 3d.md rules and 3d_visualization.py example for surfaces, parametric curves, and camera orientation.

Full instructions (SKILL.md)

Source of truth, from adithya-s-k/manim_skill.


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

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

Related skills

More from adithya-s-k/manim_skill and the wider catalog.

MAmanimgl-best-practices logo

manimgl-best-practices

adithya-s-k/manim_skill

Best practices for ManimGL (3Blue1Brown's OpenGL animation engine) with interactive development, 3D rendering, and LaTeX math.

1.4k installs
MAmanim-composer logo

manim-composer

adithya-s-k/manim_skill

Plan educational animations scene-by-scene before coding—transforms vague video ideas into detailed Manim implementation specs.

1.7k installs
WRwrite-xiaohongshu logo

write-xiaohongshu

adjfks/corner-skills

Research top Xiaohongshu posts, analyze patterns, enrich with Firecrawl, then write and publish XHS notes with strict limits: title ≤20 chars, body ≤1000 chars.

4.3k installs
ANanalyze-and-plan logo

analyze-and-plan

adobe/skills

Analyzes development requirements and generates structured acceptance criteria for AEM Edge Delivery Services (EDS) tasks. Use when the user needs to define acceptance criteria, write requirements, scope work, or create a definition of done for EDS blocks, components, variants, bug fixes, or styling changes. Produces task breakdowns, identifies edge cases, and documents analysis for new blocks, variants, behavior modifications, CSS-only changes, and bug fixes.

779 installs
AUauth logo

auth

adobe/skills

Authenticate with AEM Edge Delivery Services. Opens browser for login and captures token. Works for admin.hlx.page and Config Service APIs regardless of content source (Document Authoring, SharePoint, or Google Drive).

714 installs
AUauthoring logo

authoring

adobe/skills

Generate comprehensive documentation for content authors taking over an AEM Edge Delivery Services project. Analyzes the project structure and produces a complete authoring guide with blocks, templates, configurations, and publishing workflows.

600 installs