Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
kaneyoung1994 avatar

Animation Master

  • 2 installs
  • 1 repo stars
  • Updated June 1, 2026
  • kaneyoung1994/motion-skill

Reusable CSS motion library that copies and wires bundled .t-* animation effects into a project for UI transitions, text motion, hovers, and page transitions.

About

A CSS animation library that installs bundled .t-* effect files into a target project and wires them to elements via classes and state hooks. A developer uses it to add element motion, UI transitions, text effects, or one-click CSS animation snippets.

  • Effects live in assets/css as reusable .t-* classes; copy only what's needed
  • Preserves prefers-reduced-motion blocks and uses state hooks like is-open

Animation Master by the numbers

  • 2 all-time installs (skills.sh)
  • Ranked #1,863 of 2,245 Frontend Development skills by installs in the Skillselion catalog
  • Data as of Jul 8, 2026 (Skillselion catalog sync)
npx skills add https://github.com/kaneyoung1994/motion-skill --skill animation-master

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs2
repo stars1
Last updatedJune 1, 2026
Repositorykaneyoung1994/motion-skill

What it does

Reusable CSS motion library that copies and wires bundled .t-* animation effects into a project for UI transitions, text motion, hovers, and page transitions.

Files

SKILL.mdMarkdownGitHub ↗

Animation Master

Use this skill to apply the bundled Animation Master CSS effects to a website or app. The CSS files are stored in assets/css/ and use reusable .t-* class names.

Treat this skill as the source library for Animation Master motion. Browser extensions, preview sites, or copied prompts are consumers of the skill; they should not narrow the skill's available effect set or routing model.

Workflow

1. Choose the effect category and file.

  • Read references/catalog.md when selecting an effect or mapping a request to a CSS file.
  • Prefer copying only the CSS file(s) needed for the requested effect.

2. Copy CSS into the target project.

  • Use scripts/install_motion_css.py --target <directory> <effect-name> for selected effects.
  • Use scripts/install_motion_css.py --target <directory> --all only when the user wants the full library.

3. Wire the effect in markup.

  • Add the corresponding .t-* class to the element.
  • Preserve the class names and keyframe names unless the user asks for a naming change.
  • Keep existing prefers-reduced-motion blocks.

4. Add state hooks when required.

  • UI transition files commonly use state classes or attributes such as .is-open, .is-closing, .is-previewing, .is-animating, data-state, or data-page.
  • Text effects use .t-text-animation, the specific text class, and .is-previewing.
  • For existing page text, prefer the text integration contract below instead of mutating the original text node directly.

5. Verify visually after integration.

  • For local web work, run or reuse the local dev server and inspect the page in the browser.
  • Check that the animation starts, stops, or replays according to the requested interaction.

Resources

  • assets/css/: packaged CSS effects copied from the Animation Master site.
  • references/catalog.md: effect categories, filenames, primary classes, and typical usage.
  • scripts/install_motion_css.py: utility to list or copy CSS files into another project.

Integration Notes

  • Preserve each CSS file's native playback semantics unless the user asks for a different behavior. Some element effects are continuous, text reveals are usually one-shot, and UI effects are state-driven.
  • Element effects are usually transforms on a single element.
  • UI effects often need wrapper markup and a state toggle.
  • Text effects are split into individual files; do not re-aggregate them unless the user asks.
  • transitions-root.css contains shared UI motion tokens and can be copied when a page uses several UI transition effects.

Text And Digit Integration Contract

Use this contract when applying text, typewriter, digitGroup, or digitRoll effects to existing page content. The goal is to preserve the original DOM flow, typography, and layout.

  • Do not replace the target element's font family, font size, weight, line height, color, letter spacing, alignment, white-space, or word-break.
  • Do not flatten the target element's full textContent into one overlay. Preserve the existing DOM and only wrap eligible visible text nodes.
  • Skip text inside script, style, noscript, template, svg, canvas, media, embeds, form controls, and editable controls.
  • For normal text effects, replace each eligible text node with an inline wrapper such as .web-animator-text-node.am-target-text.t-text-animation.<effect>.is-previewing, then split inside that wrapper according to textMode.
  • For textMode: char, group Latin text by word so letters inside one word do not wrap separately; keep CJK text naturally wrappable. Set sequential --i on animated characters. For textMode: word, use words for Latin text and character-like runs for CJK.
  • For digitGroup, only replace numeric runs with inline .web-animator-digit-node wrappers. Create one .t-digit per numeric character and set sequential --i; do not animate the whole number as one unit.
  • For digitRoll, only replace numeric runs with inline .web-animator-digit-node wrappers. Keep each original digit's footprint with an invisible anchor, place the viewport/reel over that anchor, and avoid fixed widths that change real page text flow or baseline.
  • Text and digit effects are normally one-shot: play once and leave the final visible state. Do not restart by repeatedly rebuilding wrappers unless explicitly requested.
  • Apply requested customProperties, duration variables, or intensity variables to the animation carrier. Ignoring them changes the selected motion.
  • If the target element already has a transform, preserve that base transform and compose the motion transform on top of it instead of replacing positioning transforms.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.