This tool supports Vue development by enforcing Composition API practices and simplifying the use of macros and reactivity primitives.

Install

mkdir -p .claude/skills/vue && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/1940" && unzip -o skill.zip -d .claude/skills/vue && rm skill.zip

Installs to .claude/skills/vue

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Vue 3 Composition API, script setup macros, reactivity system, and built-in components. Use when writing Vue SFCs, defineProps/defineEmits/defineModel, watchers, or using Transition/Teleport/Suspense/KeepAlive.
210 chars✓ has a “when” trigger
Intermediate

Key capabilities

  • Utilize Vue 3 Composition API and script setup
  • Implement reactivity with ref, shallowRef, and computed
  • Manage component props, emits, and models
  • Configure built-in components like Transition and Teleport
  • Handle lifecycle hooks and watchers

How it works

The skill provides a set of best practices and patterns for Vue 3 development, emphasizing the use of `<script setup lang="ts">` and Composition API macros for component definition and reactivity.

Inputs & outputs

You give it
Vue component requirements or refactoring task
You get back
Vue Single File Component (SFC) code

When to use vue

  • Create a new Vue SFC
  • Refactor Options API to Composition API
  • Implement complex watchers and lifecycle hooks
  • Configure teleports and suspense components

About this skill

Vue

Based on Vue 3.5. Always use Composition API with <script setup lang="ts">.

Preferences

  • Prefer TypeScript over JavaScript
  • Prefer <script setup lang="ts"> over <script>
  • For performance, prefer shallowRef over ref if deep reactivity is not needed
  • Always use Composition API over Options API
  • Discourage using Reactive Props Destructure

Core

TopicDescriptionReference
Script Setup & Macros<script setup>, defineProps, defineEmits, defineModel, defineExpose, defineOptions, defineSlots, genericsscript-setup-macros
Reactivity & Lifecycleref, shallowRef, computed, watch, watchEffect, effectScope, lifecycle hooks, composablescore-new-apis

Features

TopicDescriptionReference
Built-in Components & DirectivesTransition, Teleport, Suspense, KeepAlive, v-memo, custom directivesadvanced-patterns

Quick Reference

Component Template

<script setup lang="ts">
import { ref, computed, watch, onMounted } from 'vue'

const props = defineProps<{
  title: string
  count?: number
}>()

const emit = defineEmits<{
  update: [value: string]
}>()

const model = defineModel<string>()

const doubled = computed(() => (props.count ?? 0) * 2)

watch(() => props.title, (newVal) => {
  console.log('Title changed:', newVal)
})

onMounted(() => {
  console.log('Component mounted')
})
</script>

<template>
  <div>{{ title }} - {{ doubled }}</div>
</template>

Key Imports

// Reactivity
import { ref, shallowRef, computed, reactive, readonly, toRef, toRefs, toValue } from 'vue'

// Watchers
import { watch, watchEffect, watchPostEffect, onWatcherCleanup } from 'vue'

// Lifecycle
import { onMounted, onUpdated, onUnmounted, onBeforeMount, onBeforeUpdate, onBeforeUnmount } from 'vue'

// Utilities
import { nextTick, defineComponent, defineAsyncComponent } from 'vue'

When not to use it

  • When using Options API for legacy codebases
  • When deep reactivity is required for large objects

Prerequisites

TypeScript environment

Limitations

  • Discourages Reactive Props Destructure
  • Requires TypeScript for full feature support

How it compares

It enforces modern Vue 3 standards and performance-oriented reactivity choices over legacy Options API patterns.

Compared to similar skills

vue side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
vue (this skill)106moNo flagsIntermediate
screenshot-to-code2042moNo flagsBeginner
vue-best-practices195moNo flagsIntermediate
web-component-design55moNo flagsIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry