$npx -y skills add calesthio/OpenMontage --skill manimce-best-practicesTrigger 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 communi
| 1 | ## How to use |
| 2 | |
| 3 | Read individual rule files for detailed explanations and code examples: |
| 4 | |
| 5 | ### Core Concepts |
| 6 | - [rules/scenes.md](rules/scenes.md) - Scene structure, construct method, and scene types |
| 7 | - [rules/mobjects.md](rules/mobjects.md) - Mobject types, VMobject, Groups, and positioning |
| 8 | - [rules/animations.md](rules/animations.md) - Animation classes, playing animations, and timing |
| 9 | |
| 10 | ### Creation & Transformation |
| 11 | - [rules/creation-animations.md](rules/creation-animations.md) - Create, Write, FadeIn, DrawBorderThenFill |
| 12 | - [rules/transform-animations.md](rules/transform-animations.md) - Transform, ReplacementTransform, morphing |
| 13 | - [rules/animation-groups.md](rules/animation-groups.md) - AnimationGroup, LaggedStart, Succession |
| 14 | |
| 15 | ### Text & Math |
| 16 | - [rules/text.md](rules/text.md) - Text mobjects, fonts, and styling |
| 17 | - [rules/latex.md](rules/latex.md) - MathTex, Tex, LaTeX rendering, and coloring formulas |
| 18 | - [rules/text-animations.md](rules/text-animations.md) - Write, AddTextLetterByLetter, TypeWithCursor |
| 19 | |
| 20 | ### Styling & Appearance |
| 21 | - [rules/colors.md](rules/colors.md) - Color constants, gradients, and color manipulation |
| 22 | - [rules/styling.md](rules/styling.md) - Fill, stroke, opacity, and visual properties |
| 23 | |
| 24 | ### Positioning & Layout |
| 25 | - [rules/positioning.md](rules/positioning.md) - move_to, next_to, align_to, shift methods |
| 26 | - [rules/grouping.md](rules/grouping.md) - VGroup, Group, arrange, and layout patterns |
| 27 | |
| 28 | ### Coordinate Systems & Graphing |
| 29 | - [rules/axes.md](rules/axes.md) - Axes, NumberPlane, coordinate systems |
| 30 | - [rules/graphing.md](rules/graphing.md) - Plotting functions, parametric curves |
| 31 | - [rules/3d.md](rules/3d.md) - ThreeDScene, 3D axes, surfaces, camera orientation |
| 32 | |
| 33 | ### Animation Control |
| 34 | - [rules/timing.md](rules/timing.md) - Rate functions, easing, run_time, lag_ratio |
| 35 | - [rules/updaters.md](rules/updaters.md) - Updaters, ValueTracker, dynamic animations |
| 36 | - [rules/camera.md](rules/camera.md) - MovingCameraScene, zoom, pan, frame manipulation |
| 37 | |
| 38 | ### Configuration & CLI |
| 39 | - [rules/cli.md](rules/cli.md) - Command-line interface, rendering options, quality flags |
| 40 | - [rules/config.md](rules/config.md) - Configuration system, manim.cfg, settings |
| 41 | |
| 42 | ### Shapes & Geometry |
| 43 | - [rules/shapes.md](rules/shapes.md) - Circle, Square, Rectangle, Polygon, and geometric primitives |
| 44 | - [rules/lines.md](rules/lines.md) - Line, Arrow, Vector, DashedLine, and connectors |
| 45 | |
| 46 | ## Working Examples |
| 47 | |
| 48 | Complete, tested example files demonstrating common patterns: |
| 49 | |
| 50 | - [examples/basic_animations.py](examples/basic_animations.py) - Shape creation, text, lagged animations, path movement |
| 51 | - [examples/math_visualization.py](examples/math_visualization.py) - LaTeX equations, color-coded math, derivations |
| 52 | - [examples/updater_patterns.py](examples/updater_patterns.py) - ValueTracker, dynamic animations, physics simulations |
| 53 | - [examples/graph_plotting.py](examples/graph_plotting.py) - Axes, functions, areas, Riemann sums, polar plots |
| 54 | - [examples/3d_visualization.py](examples/3d_visualization.py) - ThreeDScene, surfaces, 3D camera, parametric curves |
| 55 | |
| 56 | ## Scene Templates |
| 57 | |
| 58 | Copy and modify these templates to start new projects: |
| 59 | |
| 60 | - [templates/basic_scene.py](templates/basic_scene.py) - Standard 2D scene template |
| 61 | - [templates/camera_scene.py](templates/camera_scene.py) - MovingCameraScene with zoom/pan |
| 62 | - [templates/threed_scene.py](templates/threed_scene.py) - 3D scene with surfaces and camera rotation |
| 63 | |
| 64 | ## Quick Reference |
| 65 | |
| 66 | ### Basic Scene Structure |
| 67 | ```python |
| 68 | from manim import * |
| 69 | |
| 70 | class MyScene(Scene): |
| 71 | def construct(self): |
| 72 | # Create mobjects |
| 73 | circle = Circle() |
| 74 | |
| 75 | # Add to scene (static) |
| 76 | self.add(circle) |
| 77 | |
| 78 | # Or animate |
| 79 | self.play(Create(circle)) |
| 80 | |
| 81 | # Wait |
| 82 | self.wait(1) |
| 83 | ``` |
| 84 | |
| 85 | ### Render Command |
| 86 | ```bash |
| 87 | # Basic render with preview |
| 88 | manim -pql scene.py MyScene |
| 89 | |
| 90 | # Quality flags: -ql (low), -qm (medium), -qh (high), -qk (4k) |
| 91 | manim -pqh scene.py MyScene |
| 92 | ``` |
| 93 | |
| 94 | ### Key Differences from 3b1b/ManimGL |
| 95 | |
| 96 | | Feature | Manim Community | 3b1b/ManimGL | |
| 97 | |---------|-----------------|--------------| |
| 98 | | Import | `from manim import *` | `from manimlib import *` | |
| 99 | | CLI | `manim` | `manimgl` | |
| 100 | | Math text | `MathTex(r"\pi")` | `Tex(R"\pi")` | |
| 101 | | Scene | `Scene` | `InteractiveScene` | |
| 102 | | Package | `manim` (PyPI) | `manimgl` (PyPI) | |
| 103 | |
| 104 | ### Jupyter Notebook Support |
| 105 | |
| 106 | Use the `%%manim` cell magic: |
| 107 | |
| 108 | ```python |
| 109 | %%manim -qm MyScene |
| 110 | class MyScene(Scene): |
| 111 | def construct(self): |
| 112 | self.play(Create |