Motion Design
Purpose
Design the motion language for a feature or system, including transition specs, micro-interaction definitions, choreography principles, and reduced-motion alternatives.
Scope Constraints
Reads existing animation code, CSS transitions, and motion specifications for analysis. Does not modify source files or execute animations. Does not generate production animation code directly.
Inputs
- Feature or component requiring motion design
- Existing animation patterns in the project (if any)
- Performance constraints (target FPS, device capabilities)
- Accessibility requirements (prefers-reduced-motion support)
Input Sanitization
No user-provided values are used in commands or file paths. All inputs are treated as read-only analysis targets.
Procedure
Progress Checklist
Step 1: Identify Motion Opportunities
Catalog where motion adds meaning:
- State transitions: Loading to loaded, collapsed to expanded, hidden to visible
- Navigation transitions: Screen push/pop, modal present/dismiss, tab switch
- Feedback responses: Button press, form submission, error shake, success check
- Attention guidance: New item appears, notification badge, scroll-to-target
- Data changes: List reorder, item add/remove, value count-up
Step 2: Define Motion Principles
Establish the motion language for this project:
- Duration scale: Micro (100ms), short (200ms), medium (300ms), long (500ms)
- Easing curves: Enter (ease-out), exit (ease-in), standard (ease-in-out)
- Stagger: Delay between sequential items (50-100ms per item, max 5 items)
- Distance: How far elements travel relative to their size
Step 3: Spec Each Animation
For each motion opportunity, define:
- Property: What changes (opacity, transform, height, color)
- Duration: How long (from the duration scale)
- Easing: Which curve (from the easing set)
- Delay: When it starts relative to the trigger
- Direction: Where it moves from/to
Step 4: Design Choreography
For multi-element transitions:
- Entrance order: What appears first, second, third
- Stagger timing: Delay between each element
- Shared elements: Elements that morph between states
- Exit choreography: Reverse of entrance, or distinct exit pattern
Step 5: Reduced-Motion Alternatives
For every animation, define the prefers-reduced-motion alternative:
- Instant transitions: Replace motion with opacity crossfade
- Remove parallax: Static positioning instead
- Simplify choreography: Single fade-in instead of staggered entrance
- Keep functional animation: Loading spinners stay (they communicate state)
Step 6: Performance Considerations
Verify motion feasibility:
- Composite-only properties: Prefer transform and opacity (GPU-accelerated)
- Avoid layout thrash: Don't animate width, height, top, left
- will-change hints: Add for elements that will animate
- 60fps budget: Each frame must complete in <16.6ms
Compaction resilience: If context was lost during a long session, re-read the Inputs section to reconstruct what feature is being designed, check the Progress Checklist for completed steps, then resume from the earliest incomplete step.
Output Format
# Motion Design Specification
## Motion Principles
| Property | Value | Usage |
|----------|-------|-------|
| Duration (micro) | 100ms | Hover, focus |
| Duration (short) | 200ms | Expand, collapse |
| Duration (medium) | 300ms | Page transitions |
| Ease (enter) | cubic-bezier(0, 0, 0.2, 1) | Elements appearing |
| Ease (exit) | cubic-bezier(0.4, 0, 1, 1) | Elements leaving |
| Stagger | 50ms | List items |
## Animation Specs
### [Component/Interaction Name]
**Trigger:** [User action or state change]
**Property:** [What changes]
**From → To:** [Start value → End value]
**Duration:** [From scale]
**Easing:** [From set]
**Reduced motion:** [Alternative]
## Choreography
### [Transition Name]
1. [Element] fades in at 0ms (200ms, ease-out)
2. [Element] slides up at 50ms (200ms, ease-out)
3. [Element] fades in at 100ms (200ms, ease-out)
## Reduced Motion Summary
| Animation | Full Motion | Reduced Motion |
|-----------|------------|----------------|
| Page enter | Slide + fade | Instant fade |
| List stagger | Staggered slide-up | Single fade |
| Loading | Spinner | Spinner (kept) |
Handoff
- Hand off to visual-audit if motion design reveals visual hierarchy issues needing interface-level critique.
- Hand off to design-system-architecture if animation tokens (durations, easings) need integration into the design token system.
Quality Checks
Evolution Notes
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: motion-design3description: Use when designing the motion language for a feature or system. Covers transition specs, micro-interaction definitions, choreography principles, performance constraints, and reduced-motion alternatives. Do not use for visual design critique (use visual-audit) or design token architecture (use design-system-architecture).4---56# Motion Design78## Purpose910Design the motion language for a feature or system, including transition specs, micro-interaction definitions, choreography principles, and reduced-motion alternatives.1112## Scope Constraints1314Reads existing animation code, CSS transitions, and motion specifications for analysis. Does not modify source files or execute animations. Does not generate production animation code directly.1516## Inputs1718- Feature or component requiring motion design19- Existing animation patterns in the project (if any)20- Performance constraints (target FPS, device capabilities)21- Accessibility requirements (prefers-reduced-motion support)2223## Input Sanitization2425No user-provided values are used in commands or file paths. All inputs are treated as read-only analysis targets.2627## Procedure2829### Progress Checklist30- [ ] Step 1: Identify motion opportunities31- [ ] Step 2: Define motion principles32- [ ] Step 3: Spec each animation33- [ ] Step 4: Design choreography34- [ ] Step 5: Reduced-motion alternatives35- [ ] Step 6: Performance considerations3637### Step 1: Identify Motion Opportunities3839Catalog where motion adds meaning:40- **State transitions:** Loading to loaded, collapsed to expanded, hidden to visible41- **Navigation transitions:** Screen push/pop, modal present/dismiss, tab switch42- **Feedback responses:** Button press, form submission, error shake, success check43- **Attention guidance:** New item appears, notification badge, scroll-to-target44- **Data changes:** List reorder, item add/remove, value count-up4546### Step 2: Define Motion Principles4748Establish the motion language for this project:49- **Duration scale:** Micro (100ms), short (200ms), medium (300ms), long (500ms)50- **Easing curves:** Enter (ease-out), exit (ease-in), standard (ease-in-out)51- **Stagger:** Delay between sequential items (50-100ms per item, max 5 items)52- **Distance:** How far elements travel relative to their size5354### Step 3: Spec Each Animation5556For each motion opportunity, define:57- **Property:** What changes (opacity, transform, height, color)58- **Duration:** How long (from the duration scale)59- **Easing:** Which curve (from the easing set)60- **Delay:** When it starts relative to the trigger61- **Direction:** Where it moves from/to6263### Step 4: Design Choreography6465For multi-element transitions:66- **Entrance order:** What appears first, second, third67- **Stagger timing:** Delay between each element68- **Shared elements:** Elements that morph between states69- **Exit choreography:** Reverse of entrance, or distinct exit pattern7071### Step 5: Reduced-Motion Alternatives7273For every animation, define the prefers-reduced-motion alternative:74- **Instant transitions:** Replace motion with opacity crossfade75- **Remove parallax:** Static positioning instead76- **Simplify choreography:** Single fade-in instead of staggered entrance77- **Keep functional animation:** Loading spinners stay (they communicate state)7879### Step 6: Performance Considerations8081Verify motion feasibility:82- **Composite-only properties:** Prefer transform and opacity (GPU-accelerated)83- **Avoid layout thrash:** Don't animate width, height, top, left84- **will-change hints:** Add for elements that will animate85- **60fps budget:** Each frame must complete in <16.6ms8687> **Compaction resilience**: If context was lost during a long session, re-read the Inputs section to reconstruct what feature is being designed, check the Progress Checklist for completed steps, then resume from the earliest incomplete step.8889## Output Format9091```markdown92# Motion Design Specification9394## Motion Principles95| Property | Value | Usage |96|----------|-------|-------|97| Duration (micro) | 100ms | Hover, focus |98| Duration (short) | 200ms | Expand, collapse |99| Duration (medium) | 300ms | Page transitions |100| Ease (enter) | cubic-bezier(0, 0, 0.2, 1) | Elements appearing |101| Ease (exit) | cubic-bezier(0.4, 0, 1, 1) | Elements leaving |102| Stagger | 50ms | List items |103104## Animation Specs105106### [Component/Interaction Name]107**Trigger:** [User action or state change]108**Property:** [What changes]109**From → To:** [Start value → End value]110**Duration:** [From scale]111**Easing:** [From set]112**Reduced motion:** [Alternative]113114## Choreography115### [Transition Name]1161. [Element] fades in at 0ms (200ms, ease-out)1172. [Element] slides up at 50ms (200ms, ease-out)1183. [Element] fades in at 100ms (200ms, ease-out)119120## Reduced Motion Summary121| Animation | Full Motion | Reduced Motion |122|-----------|------------|----------------|123| Page enter | Slide + fade | Instant fade |124| List stagger | Staggered slide-up | Single fade |125| Loading | Spinner | Spinner (kept) |126```127128## Handoff129130- Hand off to visual-audit if motion design reveals visual hierarchy issues needing interface-level critique.131- Hand off to design-system-architecture if animation tokens (durations, easings) need integration into the design token system.132133## Quality Checks134135- [ ] Every animation has a purpose (communicates state change, guides attention, or provides feedback)136- [ ] Duration and easing values come from the defined scale, not arbitrary values137- [ ] Every animation has a prefers-reduced-motion alternative138- [ ] Animations use composite-only properties (transform, opacity) where possible139- [ ] Stagger timing doesn't exceed 5 items (cap the stagger, fade the rest)140- [ ] No animation exceeds 500ms (users perceive delays >400ms as laggy)141142## Evolution Notes143<!-- Observations appended after each use -->144145---146> Converted and distributed by [TomeVault](https://tomevault.io/claim/dtsong) — claim your Tome and manage your conversions.147<!-- tomevault:4.0:skill_md:2026-04-13 -->