vue

Guide Vue 3 component and composable development with Composition API best practices.

Updated Apr 30, 2026
One-click install
npx skills add https://github.com/Guibibi/budgetpulse --skill vue-guibibi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: vue
Source: https://github.com/Guibibi/budgetpulse/tree/main/.agents/skills/vue
Command: npx skills add https://github.com/Guibibi/budgetpulse --skill vue-guibibi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps you write, refactor, and test Vue 3 code with fewer reactivity mistakes, cleaner component patterns, and stronger TypeScript safety.

Core Features & Use Cases

  • Component Development: Create and edit .vue components using Composition API patterns, props and emits best practices, defineModel, and slot conventions.
  • Composable and Utility Guidance: Build use* composables and client utilities with correct reactivity, lifecycle cleanup, readonly state, and VueUse-friendly structure.
  • Testing and Debugging: Write component and composable tests, mock router behavior, and diagnose common Vue edge cases like hydration mismatches and watcher cleanup issues.

Quick Start

Use the vue skill to review this Vue 3 component for reactivity issues, improve its props and emits typing, and suggest a clean test strategy.

Frequently Asked Questions about vue

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix Vue 3 reactivity issues when passing reactive props to composables?

To fix Vue 3 reactivity issues with reactive props, ensure composables accept reactive references and maintain readonly state. This approach prevents accidental mutations and correctly tracks dependency updates throughout the component lifecycle.

What is the best way to type emits and injection patterns in Vue 3 components?

The best way to type emits and injection patterns in Vue 3 components is using TypeScript-safe definitions. This ensures strict type checking for component communication and dependency injection, reducing runtime errors and improving code maintainability.

How do I clean up watchers in Vue 3 composables to prevent memory leaks?

To clean up watchers in Vue 3 composables and prevent memory leaks, apply proper lifecycle cleanup within your use* functions. This involves managing watcher teardown logic explicitly to avoid lingering references and unexpected behavior.

How do I write tests for Vue 3 composables and mock router behavior?

Writing tests for Vue 3 composables and mocking router behavior involves creating focused test files that isolate composable logic. You mock router behavior to verify navigation guards and component interactions without triggering full route transitions.

Why does my Vue 3 component have a hydration mismatch error?

A Vue 3 hydration mismatch error occurs when server-rendered HTML differs from client-side rendering. Diagnosing common Vue edge cases involves checking client-only conditionals and ensuring consistent state initialization between server and client environments.

Can I use VueUse-friendly structure when building client-side utilities and composables?

Yes, you can use a VueUse-friendly structure when building client-side utilities and composables. This pattern enforces correct reactivity, standardized naming conventions for use* functions, and consistent lifecycle management for robust application state.