mcpField
M
motion

motion

github.com/onmaxDesign & UI7232.3k installsUpdated today
Repository

About motion

A reference skill for using Motion Vue, an animation library for Vue 3 and Nuxt. It helps developers select focused guidance for components, composables, gestures, and animation patterns.

Key features

  1. 01Motion component guidance
  2. 02Gesture and layout animation reference
  3. 03Composable usage guidance
  4. 04Task-based reference selection

Use cases

  1. 01Adding fade, slide, or scale effects
  2. 02Building hover, tap, or drag interactions
  3. 03Creating scroll-linked or layout animations

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/onmax/nuxt-skills --skill motion

After installing, type/motionin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
components.md
composables.md
examples.md

Details

From the project README

Motion Vue (motion-v)

Animation library for Vue 3 and Nuxt. Production-ready, hardware-accelerated animations with minimal bundle size.

Current stable: motion-v 1.x - Vue port of Motion (formerly Framer Motion)

Overview

Progressive reference for Motion Vue animations. Load only files relevant to current task (~200 tokens base, 500-1500 per sub-file).

When to Use

Use Motion Vue for:

  • Simple declarative animations (fade, slide, scale)
  • Gesture-based interactions (hover, tap, drag)
  • Scroll-linked animations
  • Layout animations and shared element transitions
  • Spring physics animations

Consider alternatives:

  • GSAP - Complex timelines, SVG morphing, scroll-triggered sequences
  • @vueuse/motion - Simpler API, less features, smaller bundle
  • CSS animations - Simple transitions without JS

Installation

# Vue 3
pnpm add motion-v

# Nuxt 3
pnpm add motion-v @vueuse/nuxt
// nuxt.config.ts - Nuxt 3 setup
export default defineNuxtConfig({
  modules: ['motion-v/nuxt'],
})

Quick Reference

Working on...Load file
Motion component, gesturesreferences/components.md
useMotionValue, useScrollreferences/composables.md
Animation examples, patternsreferences/examples.md

Loading Files

Consider loading these reference files based on your task:

DO NOT load all files at once. Load only what's relevant to your current task.

Core Concepts

Motion Component

Render any HTML/SVG element with animation capabilities:

<script setup lang="ts">
import { motion } from 'motion-v'
</script>

<template>
  <motion.div
    :initial="{ opacity: 0, y: 20 }"
    :animate="{ opacity: 1, y: 0 }"
    :exit="{ opacity: 0, y: -20 }"
    :transition="{ duration: 0.3 }"
  >
    Animated content
  </motion.div>
</template>
Gesture Animations
<motion.button
  :whileHover="{ scale: 1.05 }"
  :whilePress="{ scale: 0.95 }"
  :transition="{ type: 'spring', stiffness: 400 }"
>
  Click me
</motion.button>
Scroll Animations
<motion.div
  :initial="{ opacity: 0 }"
  :whileInView="{ opacity: 1 }"
  :viewport="{ once: true, margin: '-100px' }"
>
  Appears on scroll
</motion.div>

Available Guidance

references/components.md - Motion component variants, animation props, gesture props, layout animations, transition configuration

references/composables.md - useMotionValue, useSpring, useTransform, useScroll, useInView, animate()

references/examples.md - External resources, component libraries, animation patterns and inspiration

Comments

Markdown supported