{"id":"da5e289b-0503-48a7-be6e-2996efa7557b","shortId":"NxG46B","kind":"skill","title":"manimce-best-practices","tagline":"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.\n\nBest practices for Manim Community Edition - the commun","description":"## How to use\n\nRead individual rule files for detailed explanations and code examples:\n\n### Core Concepts\n- [rules/scenes.md](rules/scenes.md) - Scene structure, construct method, and scene types\n- [rules/mobjects.md](rules/mobjects.md) - Mobject types, VMobject, Groups, and positioning\n- [rules/animations.md](rules/animations.md) - Animation classes, playing animations, and timing\n\n### Creation & Transformation\n- [rules/creation-animations.md](rules/creation-animations.md) - Create, Write, FadeIn, DrawBorderThenFill\n- [rules/transform-animations.md](rules/transform-animations.md) - Transform, ReplacementTransform, morphing\n- [rules/animation-groups.md](rules/animation-groups.md) - AnimationGroup, LaggedStart, Succession\n\n### Text & Math\n- [rules/text.md](rules/text.md) - Text mobjects, fonts, and styling\n- [rules/latex.md](rules/latex.md) - MathTex, Tex, LaTeX rendering, and coloring formulas\n- [rules/text-animations.md](rules/text-animations.md) - Write, AddTextLetterByLetter, TypeWithCursor\n\n### Styling & Appearance\n- [rules/colors.md](rules/colors.md) - Color constants, gradients, and color manipulation\n- [rules/styling.md](rules/styling.md) - Fill, stroke, opacity, and visual properties\n\n### Positioning & Layout\n- [rules/positioning.md](rules/positioning.md) - move_to, next_to, align_to, shift methods\n- [rules/grouping.md](rules/grouping.md) - VGroup, Group, arrange, and layout patterns\n\n### Coordinate Systems & Graphing\n- [rules/axes.md](rules/axes.md) - Axes, NumberPlane, coordinate systems\n- [rules/graphing.md](rules/graphing.md) - Plotting functions, parametric curves\n- [rules/3d.md](rules/3d.md) - ThreeDScene, 3D axes, surfaces, camera orientation\n\n### Animation Control\n- [rules/timing.md](rules/timing.md) - Rate functions, easing, run_time, lag_ratio\n- [rules/updaters.md](rules/updaters.md) - Updaters, ValueTracker, dynamic animations\n- [rules/camera.md](rules/camera.md) - MovingCameraScene, zoom, pan, frame manipulation\n\n### Configuration & CLI\n- [rules/cli.md](rules/cli.md) - Command-line interface, rendering options, quality flags\n- [rules/config.md](rules/config.md) - Configuration system, manim.cfg, settings\n\n### Shapes & Geometry\n- [rules/shapes.md](rules/shapes.md) - Circle, Square, Rectangle, Polygon, and geometric primitives\n- [rules/lines.md](rules/lines.md) - Line, Arrow, Vector, DashedLine, and connectors\n\n## Working Examples\n\nComplete, tested example files demonstrating common patterns:\n\n- [examples/basic_animations.py](examples/basic_animations.py) - Shape creation, text, lagged animations, path movement\n- [examples/math_visualization.py](examples/math_visualization.py) - LaTeX equations, color-coded math, derivations\n- [examples/updater_patterns.py](examples/updater_patterns.py) - ValueTracker, dynamic animations, physics simulations\n- [examples/graph_plotting.py](examples/graph_plotting.py) - Axes, functions, areas, Riemann sums, polar plots\n- [examples/3d_visualization.py](examples/3d_visualization.py) - ThreeDScene, surfaces, 3D camera, parametric curves\n\n## Scene Templates\n\nCopy and modify these templates to start new projects:\n\n- [templates/basic_scene.py](templates/basic_scene.py) - Standard 2D scene template\n- [templates/camera_scene.py](templates/camera_scene.py) - MovingCameraScene with zoom/pan\n- [templates/threed_scene.py](templates/threed_scene.py) - 3D scene with surfaces and camera rotation\n\n## Quick Reference\n\n### Basic Scene Structure\n```python\nfrom manim import *\n\nclass MyScene(Scene):\n    def construct(self):\n        # Create mobjects\n        circle = Circle()\n\n        # Add to scene (static)\n        self.add(circle)\n\n        # Or animate\n        self.play(Create(circle))\n\n        # Wait\n        self.wait(1)\n```\n\n### Render Command\n```bash\n# Basic render with preview\nmanim -pql scene.py MyScene\n\n# Quality flags: -ql (low), -qm (medium), -qh (high), -qk (4k)\nmanim -pqh scene.py MyScene\n```\n\n### Key Differences from 3b1b/ManimGL\n\n| Feature | Manim Community | 3b1b/ManimGL |\n|---------|-----------------|--------------|\n| Import | `from manim import *` | `from manimlib import *` |\n| CLI | `manim` | `manimgl` |\n| Math text | `MathTex(r\"\\pi\")` | `Tex(R\"\\pi\")` |\n| Scene | `Scene` | `InteractiveScene` |\n| Package | `manim` (PyPI) | `manimgl` (PyPI) |\n\n### Jupyter Notebook Support\n\nUse the `%%manim` cell magic:\n\n```python\n%%manim -qm MyScene\nclass MyScene(Scene):\n    def construct(self):\n        self.play(Create(Circle()))\n```\n\n### Common Pitfalls to Avoid\n\n1. **Version confusion** - Ensure you're using `manim` (Community), not `manimgl` (3b1b version)\n2. **Check imports** - `from manim import *` is ManimCE; `from manimlib import *` is ManimGL\n3. **Outdated tutorials** - Video tutorials may be outdated; prefer official documentation\n4. **manimpango issues** - If text rendering fails, check manimpango installation requirements\n5. **PATH issues (Windows)** - If `manim` command not found, use `python -m manim` or check PATH\n\n### Installation\n\n```bash\n# Install Manim Community\npip install manim\n\n# Check installation\nmanim checkhealth\n```\n\n### Useful Commands\n\n```bash\nmanim -pql scene.py Scene    # Preview low quality (development)\nmanim -pqh scene.py Scene    # Preview high quality\nmanim --format gif scene.py  # Output as GIF\nmanim checkhealth            # Verify installation\nmanim plugins -l             # List plugins\n```","tags":["manimce","best","practices","manim","skill","adithya-s-k","agent-skills"],"capabilities":["skill","source-adithya-s-k","skill-manimce-best-practices","topic-agent-skills"],"categories":["manim_skill"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/adithya-s-k/manim_skill/manimce-best-practices","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add adithya-s-k/manim_skill","source_repo":"https://github.com/adithya-s-k/manim_skill","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 868 github stars · SKILL.md body (5,353 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T18:53:19.626Z","embedding":null,"createdAt":"2026-04-18T20:30:21.282Z","updatedAt":"2026-05-18T18:53:19.626Z","lastSeenAt":"2026-05-18T18:53:19.626Z","tsv":"'1':7,364,449 '2':16,462 '2d':315 '3':22,475 '3b1b':460 '3b1b/manimgl':393,397 '3d':184,297,325 '4':28,486 '4k':385 '5':497 'add':351 'addtextletterbylett':126 'align':154 'anim':81,84,189,205,265,281,358 'animationgroup':102 'appear':129 'area':288 'arrang':162 'arrow':245 'avoid':448 'axe':171,185,286 'bash':367,514,527 'basic':334,368 'best':3,39 'camera':187,298,330 'cell':430 'check':463,493,511,521 'checkhealth':524,551 'circl':235,349,350,356,361,444 'class':38,82,341,436 'cli':26,214,405 'code':17,58,274 'color':121,132,136,273 'color-cod':272 'command':27,218,366,503,526 'command-lin':217 'common':257,445 'commun':46 'communiti':13,43,396,457,517 'complet':252 'concept':61 'configur':213,227 'confus':451 'connector':249 'constant':133 'construct':66,345,440 'contain':18 'control':190 'coordin':166,173 'copi':303 'core':60 'creat':33,91,347,360,443 'creation':87,262 'curv':180,300 'dashedlin':247 'def':344,439 'demonstr':256 'deriv':276 'detail':55 'develop':535 'differ':391 'document':485 'drawborderthenfil':94 'dynam':204,280 'eas':195 'edit':44 'ensur':452 'equat':271 'exampl':59,251,254 'examples/3d_visualization.py':293,294 'examples/basic_animations.py':259,260 'examples/graph_plotting.py':284,285 'examples/math_visualization.py':268,269 'examples/updater_patterns.py':277,278 'explan':56 'fadein':93 'fail':492 'featur':394 'file':53,255 'fill':140 'flag':224,377 'font':111 'format':544 'formula':122 'found':505 'frame':211 'function':178,194,287 'geometr':240 'geometri':232 'gif':545,549 'gradient':134 'graph':168 'group':76,161 'high':383,541 'import':21,340,398,401,404,464,467,472 'individu':51 'instal':495,513,515,519,522,553 'interactivescen':418 'interfac':220 'issu':488,499 'jupyt':424 'key':390 'l':556 'lag':198,264 'laggedstart':103 'latex':118,270 'layout':147,164 'line':219,244 'list':557 'low':379,533 'm':508 'magic':431 'manim':10,12,20,25,42,339,372,386,395,400,406,420,429,433,456,466,502,509,516,520,523,528,536,543,550,554 'manim.cfg':229 'manimc':2,15,36,469 'manimce-best-practic':1 'manimce-specif':35 'manimgl':407,422,459,474 'manimlib':403,471 'manimpango':487,494 'manipul':137,212 'math':106,275,408 'mathtex':32,116,410 'may':480 'medium':381 'mention':9 'method':67,157 'mobject':73,110,348 'modifi':305 'morph':99 'move':150 'movement':267 'movingcamerascen':208,320 'myscen':342,375,389,435,437 'new':310 'next':152 'notebook':425 'numberplan':172 'offici':484 'opac':142 'option':222 'orient':188 'outdat':476,482 'output':547 'packag':419 'pan':210 'parametr':179,299 'path':266,498,512 'pattern':165,258 'physic':282 'pi':412,415 'pip':518 'pitfal':446 'play':83 'plot':177,292 'plugin':555,558 'polar':291 'polygon':238 'posit':78,146 'pqh':387,537 'pql':373,529 'practic':4,40 'prefer':483 'preview':371,532,540 'primit':241 'project':311 'properti':145 'pypi':421,423 'python':337,432,507 'qh':382 'qk':384 'ql':378 'qm':380,434 'qualiti':223,376,534,542 'quick':332 'r':411,414 'rate':193 'ratio':199 're':454 'read':50 'rectangl':237 'refer':333 'render':119,221,365,369,491 'replacementtransform':98 'requir':496 'riemann':289 'rotat':331 'rule':52 'rules/3d.md':181,182 'rules/animation-groups.md':100,101 'rules/animations.md':79,80 'rules/axes.md':169,170 'rules/camera.md':206,207 'rules/cli.md':215,216 'rules/colors.md':130,131 'rules/config.md':225,226 'rules/creation-animations.md':89,90 'rules/graphing.md':175,176 'rules/grouping.md':158,159 'rules/latex.md':114,115 'rules/lines.md':242,243 'rules/mobjects.md':71,72 'rules/positioning.md':148,149 'rules/scenes.md':62,63 'rules/shapes.md':233,234 'rules/styling.md':138,139 'rules/text-animations.md':123,124 'rules/text.md':107,108 'rules/timing.md':191,192 'rules/transform-animations.md':95,96 'rules/updaters.md':200,201 'run':24,196 'scene':31,64,69,301,316,326,335,343,353,416,417,438,531,539 'scene.py':374,388,530,538,546 'self':346,441 'self.add':355 'self.play':359,442 'self.wait':363 'set':230 'shape':231,261 'shift':156 'simul':283 'skill' 'skill-manimce-best-practices' 'source-adithya-s-k' 'specif':37 'squar':236 'standard':314 'start':309 'static':354 'stroke':141 'structur':65,336 'style':113,128 'success':104 'sum':290 'support':426 'surfac':186,296,328 'system':167,174,228 'templat':302,307,317 'templates/basic_scene.py':312,313 'templates/camera_scene.py':318,319 'templates/threed_scene.py':323,324 'test':253 'tex':117,413 'text':105,109,263,409,490 'threedscen':183,295 'time':86,197 'topic-agent-skills' 'transform':88,97 'trigger':5 'tutori':477,479 'type':70,74 'typewithcursor':127 'updat':202 'use':49,427,455,506,525 'user':8,23 'valuetrack':203,279 'vector':246 'verifi':552 'version':450,461 'vgroup':160 'video':478 'visual':144 'vmobject':75 'wait':362 'window':500 'work':29,250 'write':92,125 'zoom':209 'zoom/pan':322","prices":[{"id":"c4214be8-cae3-4451-8100-11b19ce077be","listingId":"da5e289b-0503-48a7-be6e-2996efa7557b","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"adithya-s-k","category":"manim_skill","install_from":"skills.sh"},"createdAt":"2026-04-18T20:30:21.282Z"}],"sources":[{"listingId":"da5e289b-0503-48a7-be6e-2996efa7557b","source":"github","sourceId":"adithya-s-k/manim_skill/manimce-best-practices","sourceUrl":"https://github.com/adithya-s-k/manim_skill/tree/main/skills/manimce-best-practices","isPrimary":false,"firstSeenAt":"2026-04-18T21:56:30.341Z","lastSeenAt":"2026-05-18T18:53:19.626Z"},{"listingId":"da5e289b-0503-48a7-be6e-2996efa7557b","source":"skills_sh","sourceId":"adithya-s-k/manim_skill/manimce-best-practices","sourceUrl":"https://skills.sh/adithya-s-k/manim_skill/manimce-best-practices","isPrimary":true,"firstSeenAt":"2026-04-18T20:30:21.282Z","lastSeenAt":"2026-05-07T22:40:28.468Z"}],"details":{"listingId":"da5e289b-0503-48a7-be6e-2996efa7557b","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"adithya-s-k","slug":"manimce-best-practices","github":{"repo":"adithya-s-k/manim_skill","stars":868,"topics":["agent-skills"],"license":"mit","html_url":"https://github.com/adithya-s-k/manim_skill","pushed_at":"2026-01-23T16:30:42Z","description":"Agent skills for Manim to create 3Blue1Brown style animations.","skill_md_sha":"0f77bbaa9f1ffd6c875f250ccadd5e323d454580","skill_md_path":"skills/manimce-best-practices/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/adithya-s-k/manim_skill/tree/main/skills/manimce-best-practices"},"layout":"multi","source":"github","category":"manim_skill","frontmatter":{"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.\n\nBest 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.\n\nNOT for ManimGL/3b1b version (which uses `manimlib` imports and `manimgl` CLI)."},"skills_sh_url":"https://skills.sh/adithya-s-k/manim_skill/manimce-best-practices"},"updatedAt":"2026-05-18T18:53:19.626Z"}}