anima — anima ai agent skill anima, Anima, RedWilly, community, anima ai agent skill, ai agent skill, ide skills, agent automation, anima automation, anima workflow tool, AI agent skills, Claude Code

v1.0.0
GitHub

About this Skill

Perfect for Frontend Agents needing precise, structured animations for mathematical visualizations. Summarizes how to use the Anima animation engine (Scene, Mobjects, Fluent API, Pro API, camera, timeline, rendering, and CLI). Use when authoring or explaining Anima animations.

# Core Topics

RedWilly RedWilly
[0]
[0]
Updated: 3/12/2026

Quality Score

Top 5%
39
Excellent
Based on code quality & docs
Installation
SYS Universal Install (Auto-Detect)
> npx killer-skills add RedWilly/Anima/anima
Supports 19+ Platforms
Cursor
Windsurf
VS Code
Trae
Claude
OpenClaw
+12 more

Agent Capability Analysis

The anima skill by RedWilly is an open-source community AI agent skill for Claude Code and other IDE workflows, helping agents execute tasks with better context, repeatability, and domain-specific guidance. Optimized for anima ai agent skill, anima automation, anima workflow tool.

Ideal Agent Persona

Perfect for Frontend Agents needing precise, structured animations for mathematical visualizations.

Core Value

Empowers agents to generate clean visual output using TypeScript and the canvas element, leveraging easing functions like easeInOutQuad for smooth animations, and running on Bun for optimized performance.

Capabilities Granted for anima

Creating interactive mathematical visualizations for educational content
Generating precise animations for data-driven storytelling
Building custom, structured animations for web applications using TypeScript

! Prerequisites & Limits

  • Requires TypeScript environment
  • Runs on Bun
  • Limited to canvas rendering
Project
SKILL.md
4.5 KB
.cursorrules
1.2 KB
package.json
240 B
Ready
UTF-8

# Tags

[No tags]
SKILL.md
Readonly

Using the Anima Engine

Anima is a TypeScript animation engine for mathematical visualizations. It runs on Bun and renders to canvas.

Import everything from 'anima' (the package index). All classes, animations, and easing functions are exported from there.

Quick Start

ts
1import { Scene, Circle, Rectangle, Color, easeInOutQuad } from 'anima'; 2 3export class MyScene extends Scene { 4 constructor() { 5 super({ width: 1920, height: 1080, frameRate: 60, backgroundColor: Color.BLACK }); 6 7 const circle = new Circle(1).stroke(Color.WHITE, 2).pos(-2, 0); // radius 1, at position (-2, 0) 8 const rect = new Rectangle(2, 1).fill(Color.BLUE, 0.6).pos(2, 0); // 2×1, at position (2, 0) 9 10 // Items in the same play() call run in PARALLEL 11 this.play( 12 circle.fadeIn(1).moveTo(0, 0, 1), // fadeIn 1s, then move to (x=0, y=0) over 1s 13 rect.fadeIn(1) // fadeIn 1s (runs in parallel with circle's chain) 14 ); 15 16 this.wait(0.5); // 0.5 second pause 17 18 // Successive play() calls run SEQUENTIALLY 19 this.play(circle.fadeOut(0.5)); // fadeOut over 0.5s 20 } 21}

Render with CLI: anima render myfile.ts -s MyScene -o output.mp4

Coordinate System

Origin (0, 0) is screen center. Y-axis points up. Visible frame is ~14.2 × 8 world units at 1920×1080.

Skill Modules

For detailed usage of each subsystem, read the relevant module:

ModuleWhat it covers
SceneScene setup, config, coordinate system, play(), wait(), add()/remove(), lifecycle rules
MobjectsMobject/VMobject hierarchy, immediate setters (pos, show, hide, setScale, setRotation), saveState()/restore()
GeometryCircle, Rectangle, Line, Arrow, Arc, Polygon, Point — constructors and usage
StylingColor class (presets, fromHex, fromHSL), .stroke(), .fill(), default appearance rules
AnimationsFluent API (chaining), Pro API (explicit objects), Sequence, Parallel, MorphTo, delay(), hybrid usage
EasingAll 30+ easing functions: standard, bounce, Manim-style rate functions, choosing guide
CameraCameraFrame animations (zoomIn, zoomOut, centerOn, fitTo, zoomToPoint), Shake, Follow, bounds, instant methods
TextText creation from font files, TextStyle, glyph access, animating text
GraphGraph nodes/edges, layout algorithms (circular, tree, force-directed), updateEdges()
VGroupVGroup children management, arrange(), center(), toCorner(), alignTo(), cascading styles
KeyframesKeyframeAnimation, KeyframeTrack — fine-grained multi-property keyframe control
RenderingRenderer, formats (mp4/webp/gif/sprite/png), Resolution presets, quality, CLI commands, serialize/deserialize

Core Rules for Authoring Scenes

  1. Extend Scene and build everything in the constructor.
  2. Intro animations (fadeIn, write, draw, FadeIn, Write, Draw) auto-add objects to the scene.
  3. Transform/exit animations (moveTo, rotate, scaleTo, fadeOut, etc.) require the target to already be in the scene.
  4. Use this.add(obj) for static objects that should be visible without animation.
  5. All durations are in seconds.
  6. All angles are in radians.
  7. Multiple items in one this.play(...) call run in parallel. Successive play() calls run sequentially.
  8. Use this.wait(seconds) to insert gaps between play calls.

Long Video Tips

For 30–50 minute videos:

  • Structure in sections: Group related animations with this.wait() between logical sections.
  • Use saveState() / restore(): Save object positions before zooming in, restore to return.
  • Camera management: Use centerOn, fitTo, and zoomIn/zoomOut to guide the viewer's focus.
  • Reuse objects: remove() objects when done, add() new ones. Don't leave hundreds of invisible objects in the scene.
  • Use Sequence and Parallel: For complex choreography, compose explicitly rather than deeply nesting fluent chains.
  • Keyframes: For complex motion paths, use KeyframeAnimation instead of chaining dozens of moveTo calls.
  • Preview quality: Use quality: 'preview' or the CLI preview command during iteration, switch to production for final render.

FAQ & Installation Steps

These questions and steps mirror the structured data on this page for better search understanding.

? Frequently Asked Questions

What is anima?

Perfect for Frontend Agents needing precise, structured animations for mathematical visualizations. Summarizes how to use the Anima animation engine (Scene, Mobjects, Fluent API, Pro API, camera, timeline, rendering, and CLI). Use when authoring or explaining Anima animations.

How do I install anima?

Run the command: npx killer-skills add RedWilly/Anima/anima. It works with Cursor, Windsurf, VS Code, Claude Code, and 19+ other IDEs.

What are the use cases for anima?

Key use cases include: Creating interactive mathematical visualizations for educational content, Generating precise animations for data-driven storytelling, Building custom, structured animations for web applications using TypeScript.

Which IDEs are compatible with anima?

This skill is compatible with Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer. Use the Killer-Skills CLI for universal one-command installation.

Are there any limitations for anima?

Requires TypeScript environment. Runs on Bun. Limited to canvas rendering.

How To Install

  1. 1. Open your terminal

    Open the terminal or command line in your project directory.

  2. 2. Run the install command

    Run: npx killer-skills add RedWilly/Anima/anima. The CLI will automatically detect your IDE or AI agent and configure the skill.

  3. 3. Start using the skill

    The skill is now active. Your AI agent can use anima immediately in the current project.

Related Skills

Looking for an alternative to anima or another community skill for your workflow? Explore these related open-source skills.

View All

widget-generator

Logo of f
f

Generate customizable widget plugins for the prompts.chat feed system

149.6k
0
Design

linear

Logo of lobehub
lobehub

Linear issue management. MUST USE when: (1) user mentions LOBE-xxx issue IDs (e.g. LOBE-4540), (2) user says linear, linear issue, link linear, (3) creating PRs that reference Linear issues. Provides

73.4k
0
Communication

testing

Logo of lobehub
lobehub

Testing guide using Vitest. Use when writing tests (.test.ts, .test.tsx), fixing failing tests, improving test coverage, or debugging test issues. Triggers on test creation, test debugging, mock setup

73.3k
0
Communication

chat-sdk

Logo of lobehub
lobehub

chat-sdk is a unified TypeScript SDK for building chat bots across multiple platforms, providing a single interface for deploying bot logic.

73.0k
0
Communication