Motion pack

A motion pack ships easing tokens, transition presets, and named gestures so motion across a build feels intentional and consistent — even when widgets are composed from different authors.

What you ship

my-motion/
├── manifest.json
├── tokens/
│   ├── easing.json        # bezier curves + spring presets
│   ├── duration.json      # ms values for "snappy" / "calm" / "luxury"
│   └── gestures.json      # named multi-step motions (hover-lift, …)
├── preview/
│   └── reel.mp4           # 10-second motion reel
└── README.md

Key contracts

Scaffold

vincia create motion-pack my-motion
cd my-motion
vincia preview
vincia publish --dry-run

Approval gates

1. Tokens parse + match the schema in @vincia/sdk-types. 2. Reduced-motion compliance — every gesture defines a prefers-reduced-motion fallback. 3. Preview presentpreview/reel.mp4 exists and is ≤ 2 MB.

Where to learn more