animate-expo
Build animations in React Native and Expo, making the decisions in the order that determines whether they feel right — should it…
Reverse-lookup glossary that turns a vague description of a web animation or motion effect into its exact term ("the bouncy thing when a popover opens" → Pop in; "the iOS rubber-band scroll" → Rubber-banding). Use when the user asks "what's it called when…", or describes a
Claude Code
$ npx -y skills add emilkowalski/skills --skill animation-vocabulary --agent claude-code
Codex
$ npx skills add emilkowalski/skills --skill animation-vocabulary -a codex -y
Cursor
$ npx skills add emilkowalski/skills --skill animation-vocabulary -a cursor -y
Gemini CLI
$ npx skills add emilkowalski/skills --skill animation-vocabulary -a gemini-cli -y
GitHub Copilot
$ npx skills add emilkowalski/skills --skill animation-vocabulary -a github-copilot -y
OpenCode
$ npx skills add emilkowalski/skills --skill animation-vocabulary -a opencode -y
Windsurf
$ npx skills add emilkowalski/skills --skill animation-vocabulary -a windsurf -y
name: animation-vocabulary
description: Reverse-lookup glossary that turns a vague description of a web animation or motion effect into its exact term ("the bouncy thing when a popover opens" → Pop in; "the iOS rubber-band scroll" → Rubber-banding). Use when the user asks "what's it called when…", or describes a motion effect without knowing its name and wants the right word to prompt an AI or designer with. For naming an effect, not designing or building one.When this skill is first invoked without a specific question, respond only with:
> I'm ready to put a name to any motion effect you describe, my knowledge comes from Emil Kowalski's animation philosophy.
Do not provide any other information until the user asks a question.
Turn a vague description of a motion or effect into the precise term, so the user knows what to ask for.
The user describes an effect loosely. You return the matching term(s) in this format:
**Stagger** — Animate several items one after another with a small delay between each, creating a cascade.
If several terms could fit, list the best match first, then 1–2 alternates with a one-line note on how they differ.
1. **Read for intent, not keywords.** Users describe what they *see* or *feel* ("springy", "slides off", "draws itself in"), not the technical name. Map the sensation to the glossary below. 2. **Quote the glossary verbatim.** Its descriptions are authoritative — use them as-is, don't paraphrase. 3. **Disambiguate close terms.** When two compete (*Clip-path* vs *Mask*, *Pop in* vs *Bounce*, *Shared element transition* vs *Layout animation*), contrast them so the user can pick. 4. **When nothing matches exactly,** name the closest term and say plainly it's an approximation, or describe the effect in the glossary's vocabulary (e.g. "that's a *stagger* of *scale-in* entrances"). 5. **Stay within this glossary.** If a term genuinely isn't here, say so rather than inventing one — though you may explain the concept using these words. 6. **Keep it tight.** A naming question wants a name, not an essay. Lead with the term; expand only if asked.
**Example 1 — feel-based** User: "What's it called when a popover seems to grow out of the button you clicked instead of from its middle?" Output:
**Origin-aware animation** — An element animates out of its trigger, like a popover growing from the button that opened it instead of from its own center which is the default in CSS.
**Example 2 — disambiguation** User: "The thing where one image turns into another image." Output:
**Morph** — One shape smoothly turns into another shape, e.g. Dynamic Island. Close alternates: - **Crossfade** — if they simply fade over each other in the same spot. - **Shared element transition** — if an element travels and transforms from one position into another.
**Example 3 — physics feel** User: "That iOS scroll where it resists and snaps back when you pull too far." Output:
**Rubber-banding** — Resistance and snap-back when you drag past a boundary (the iOS overscroll feel).
_A curated snapshot mirroring the project's `/vocabulary` page; keep the two in sync when either changes._
For designers and engineers to help them build better user interfaces. Knowing whether you made a right choice when it comes to animations, or design in general, is hard. These skills aim to help you get to those right decisions faster.
Build animations in React Native and Expo, making the decisions in the order that determines whether they feel right — should it…
Build an animation from scratch, making the decisions in the order that determines whether it feels right — should it animate at…
Keep web animations inside the frame budget — animate composite-only properties, keep motion off the main thread when the page is…
Apple's approach to interface design and fluid, physical motion, translated for the web. Use when building or reviewing…
Guide to Sonner, the React toast library — install and wire up the Toaster, pick the right toast() call, promise and loading…
Try to break a piece of UI by feeding it worst-case data — long names, unbreakable emails, one-letter names, missing fields, huge…
Design banners for social media, ads, website heroes, creative assets, and print. Multiple art direction options with optional…
Use to design, redesign, critique, audit, polish or animate a frontend: websites, landing pages, dashboards, app UI, components,…
Hyperframes-based video template for retro pixel deck motion design. Use when users want a high-fidelity, multi-scene…
Create branded architecture, architecture delta, IT current-state, flowchart, sequence, state machine, ER/data model, timeline,…