vue-best-practices

Comprehensive development guidelines, TypeScript configuration, and best practices for Vue 3 applications.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "vue-best-practices" with this command: npx skills add dedsiteam/dedsi-skills/dedsiteam-dedsi-skills-vue-best-practices

Vue Best Practices

Comprehensive development guidelines, TypeScript configuration, and best practices for Vue 3 applications.

When to Apply

  • Setting up or configuring Vue 3 + TypeScript projects

  • Debugging type checking issues with vue-tsc

  • Fixing IDE/editor integration with Volar

  • Configuring Vite for Vue projects

  • Working with Vue Router typed routes

  • Writing component tests with Vitest

  • Using Composition API patterns

  • Working with defineModel, defineProps, defineExpose

  • Writing reusable composables

Capability Rules

Rules that enable AI to solve problems it cannot solve without the skill.

Type Checking

Rule Impact Description

vue-tsc-strict-templates HIGH Enable strict template checking to catch undefined components

vue-define-model-generics HIGH Fix vue-tsc errors when using defineModel with generic components

vueCompilerOptions Settings

Rule Impact Description

fallthrough-attributes HIGH Type-check fallthrough attributes on wrapper components

strict-css-modules MEDIUM Catch typos in CSS module class names at compile time

data-attributes-config MEDIUM Allow data-* attributes with strictTemplates enabled

Tooling & Configuration

Rule Impact Description

vue-tsc-typescript-compatibility HIGH Fix vue-tsc and TypeScript version incompatibility issues

volar-3-breaking-changes HIGH Fix editor integration after Volar/vue-language-server 3.0 upgrade

module-resolution-bundler HIGH Fix "Cannot find module" errors after @vue/tsconfig upgrade

unplugin-auto-import-conflicts HIGH Fix component types resolving as any with unplugin conflicts

codeactions-save-performance HIGH Fix 30-60 second save delays in large Vue projects

Vite Configuration

Rule Impact Description

path-alias-vue-sfc HIGH Fix resolve.alias failures in Vue SFC files

duplicate-plugin-detection MEDIUM Detect and fix duplicate Vue plugin registration

Component Patterns

Rule Impact Description

use-template-ref-generics MEDIUM Fix incorrect type inference for refs to generic components

define-model-update-event MEDIUM Fix runtime errors from unexpected undefined in model updates

with-defaults-union-types MEDIUM Fix incorrect default value behavior with union type props

verbatim-module-syntax MEDIUM Fix Vite dev server errors with type-only imports

deep-watch-numeric MEDIUM Enable efficient array mutation watching with Vue 3.5+ numeric deep

Template Patterns

Rule Impact Description

vue-directive-comments HIGH Control template type checking with @vue-ignore, @vue-skip directives

SFC Patterns

Rule Impact Description

script-setup-jsdoc MEDIUM Add JSDoc documentation to script setup components

Vue Router

Rule Impact Description

vue-router-typed-params MEDIUM Fix route params type narrowing with unplugin-vue-router

Testing Patterns

Rule Impact Description

teleport-testing HIGH Test teleported content (modals, tooltips)

TypeScript Patterns

Rule Impact Description

vueuse-emits-conflict MEDIUM Fix $emit type conflicts with VueUse element composables

Efficiency Rules

Rules that help AI solve problems more effectively and consistently.

Vite Configuration

Rule Impact Description

runtime-env-variables HIGH Implement runtime environment variables for multi-env deployments

hmr-vue-ssr MEDIUM Fix HMR issues in Vue SSR applications

Component Patterns

Rule Impact Description

define-expose-types MEDIUM Fix "Property does not exist" errors when accessing exposed methods

provide-inject-types MEDIUM Enable type-safe dependency injection with InjectionKey

Vue Router

Rule Impact Description

route-meta-types HIGH Extend RouteMeta interface for type-safe metadata

scroll-behavior-types MEDIUM Properly type scrollBehavior function

dynamic-routes-typing MEDIUM Type-safe dynamic route configuration

Testing Patterns

Rule Impact Description

suspense-testing HIGH Test async components with Suspense properly

pinia-store-mocking HIGH Mock Pinia stores correctly with Vitest

router-mocking HIGH Mock Vue Router with useRoute and useRouter

vue-test-utils-types MEDIUM Fix wrapper.vm property access types in Vue Test Utils

Composition API Patterns

Rule Impact Description

reactive-destructuring HIGH Avoid reactivity loss when destructuring reactive objects

composable-cleanup HIGH Prevent memory leaks in composables with proper cleanup

ref-unwrapping MEDIUM Understand ref auto-unwrapping in reactive objects

watcheffect-tracking MEDIUM Fix conditional dependency tracking in watchEffect

SFC Patterns

Rule Impact Description

script-setup-patterns HIGH Best practices for script setup syntax

css-v-bind MEDIUM Safely use reactive values in CSS

TypeScript Patterns

Rule Impact Description

component-type-helpers HIGH Extract component prop and emit types

event-handler-typing MEDIUM Type event handlers correctly

Reference

  • Vue Language Tools

  • Vue 3 Documentation

  • Vite Documentation

  • Vue Router

  • Vue Test Utils

  • VueUse

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

dedsi-vue3-coding

No summary provided by upstream source.

Repository SourceNeeds Review
General

dedsi-vue3-project

No summary provided by upstream source.

Repository SourceNeeds Review
General

dedsi-vue-ui

No summary provided by upstream source.

Repository SourceNeeds Review
General

vueuse-best-practices

No summary provided by upstream source.

Repository SourceNeeds Review