Skip to main content
skill Claude Code CX Codex Cursor GitHub Copilot

manimce-best-practices — Claude Code skill: what it does

A skill that steers the agent through Manim Community Edition: scenes, MathTex, 3D, camera work. Useful once a project starts with from manim import *.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add adithya-s-k/manim_skill --skill manimce-best-practices -a claude-code
Open on GitHub

What manimce-best-practices does

The skill is a set of rule files split by topic: scenes and construct, mobjects and groups, creation and transform animations, text and LaTeX, positioning, axes and graphing, 3D through ThreeDScene, timing, updaters, camera moves. Tested examples sit next to them, plus scene templates for plain 2D, MovingCameraScene and 3D work.

Its description fires when the conversation mentions ManimCE, when the code contains from manim import *, or when you run manim in the terminal. The agent opens the matching rule file before writing, so the output follows ManimCE habits: self.play(Create(circle)), then manim -pql scene.py MyScene to render.

One section covers the usual breakages. Mixing from manim import * with from manimlib import * breaks things fast, because those are different packages with different CLIs. Failed text rendering usually sends you to the manimpango install. On Windows, when manim is not found, python -m manim does the job. The engine itself is a separate install: pip install manim, then manim checkhealth. Check the environment before the first render, not after it.

What it helps with

  • tell manim imports apart from manimgl before the code breaks
  • scaffold a Scene with a working construct method
  • render a formula with MathTex and colour parts of it
  • plot a function on Axes with a filled area
  • drive motion with ValueTracker and updaters

Example prompts for the agent

  • Write a ManimCE scene where a circle turns into a square with `Transform`, render at low quality first.
  • My `MathTex` fails during render. Check the code and tell me what is wrong with the setup.
  • Build a `ThreeDScene` with the surface z = x*y and a slow camera rotation.

How to install manimce-best-practices

1Skills CLI (Vercel)

npx skills add adithya-s-k/manim_skill --skill manimce-best-practices -a claude-code

2Manually: put the files in place

~/.claude/skills/manimce-best-practices/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/manimce-best-practices/

Similar

godot-gdscript gamedev-skills Guides coding assistants in writing statically typed GDScript 2.0 for Godot 4.7 and porting legacy scripts from Godot 3.x. Helpful when structuring node lifecycles and signals. Claude Code CX Codex Cursor +1 6,200installs unity-csharp-scripting gamedev-skills Guides coding agents in writing Unity 6.3 LTS MonoBehaviour scripts, managing lifecycle callbacks, Inspector serialization, and coroutine execution. Claude Code CX Codex Cursor +1 5,700installs analyzing-dotnet-performance dotnet Scans C# and .NET code for about 50 performance anti-patterns across async, memory, LINQ, and I/O. Handy when auditing hot paths and memory allocations before release. Claude Code CX Codex Cursor +1 4,800installs migrate-to-rust official google Migrates legacy C++, Fortran, Java, and Python codebases to safe Rust with telemetry benchmarks. Claude Code Gemini CLI CX Codex 538installs unreal-cpp-gameplay gamedev-skills Teaches the agent to write UE5 gameplay C++: reflection macros, Gameplay Framework class roles, and module dependencies in *.Build.cs. Claude Code CX Codex Cursor +1 5,000installs dotnet-webapi dotnet A coding-agent skill for ASP.NET Core Web API work: it keeps new endpoints in the style the project already uses, adds OpenAPI metadata and central error handling. Claude Code CX Codex Cursor +1 4,200installs migrate-to-shoehorn Matt Pocock Replaces as type assertions in tests with helpers from @total-typescript/shoehorn. Use it when tests need partial objects or deliberately invalid data. Claude Code 475,388installs write-swift emilkowalski This skill guides Swift coding, reviews, and migrations using the language’s current practices. Use it to investigate concurrency errors, hangs, data races, or retain cycles. Claude Code CX Codex Cursor +1 117,500installs

Questions about manimce-best-practices

How do I install manimce-best-practices in Claude Code?

Run npx skills add adithya-s-k/manim_skill --skill manimce-best-practices -a claude-code. The skill lands at ~/.claude/skills/manimce-best-practices/SKILL.md.

What does manimce-best-practices do?

It hands the agent rules for Manim Community Edition: scene structure, animations, LaTeX, 3D, camera control, CLI flags. Each section comes with code examples.

Does it work with the 3b1b ManimGL version?

No, its description rules ManimGL out. That version uses from manimlib import *, the manimgl CLI and Tex instead of MathTex.

Source text

SKILL.md · MIT
---
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
```python
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
```bash
# 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:

```python
%%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

```bash
# Install Manim Community
pip install manim

# Check installation
manim checkhealth
```

### Useful Commands

```bash
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
```

© adithya-s-k · MIT · adithya-s-k/manim_skill

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor