vue-best-practices

📁 vinayakkulkarni/vue-nuxt-best-practices 📅 Jan 28, 2026
23
总安装量
11
周安装量
#16067
全站排名
安装命令
npx skills add https://github.com/vinayakkulkarni/vue-nuxt-best-practices --skill vue-best-practices

Agent 安装分布

cursor 8
opencode 6
github-copilot 5
goose 4
gemini-cli 4

Skill 文档

Vue Best Practices

Comprehensive performance optimization guide for Vue.js applications. Contains 40+ rules across 8 categories, prioritized by impact to guide automated refactoring and code generation.

When to Apply

Reference these guidelines when:

  • Writing new Vue components
  • Implementing reactive state and computed properties
  • Reviewing code for performance issues
  • Refactoring existing Vue code
  • Optimizing rendering and re-renders
  • Working with Composition API or Options API

Rule Categories by Priority

Priority Category Impact Prefix
1 Reactivity Fundamentals CRITICAL reactivity-
2 Component Performance CRITICAL component-
3 Computed & Watchers HIGH computed-
4 Template Optimization MEDIUM-HIGH template-
5 Composition API Patterns MEDIUM composable-
6 State Management MEDIUM state-
7 Async & Data Fetching LOW-MEDIUM async-
8 Advanced Patterns LOW advanced-

Quick Reference

1. Reactivity Fundamentals (CRITICAL)

  • reactivity-ref-vs-reactive – Use ref() for primitives, reactive() for objects
  • reactivity-avoid-destructure – Don’t destructure reactive objects
  • reactivity-toRefs – Use toRefs() when destructuring is needed
  • reactivity-shallowRef – Use shallowRef() for large non-reactive data
  • reactivity-raw-values – Use toRaw() for read-only operations on large data

2. Component Performance (CRITICAL)

  • component-v-once – Use v-once for static content
  • component-v-memo – Use v-memo for expensive list items
  • component-async – Use defineAsyncComponent for heavy components
  • component-keep-alive – Cache component state with KeepAlive
  • component-functional – Prefer functional components for stateless UI

3. Computed & Watchers (HIGH)

  • computed-cache – Use computed() for derived values, not methods
  • computed-getter-only – Avoid setters in computed when possible
  • computed-dependencies – Minimize computed dependencies
  • watch-immediate – Avoid immediate watchers, use computed instead
  • watch-deep-avoid – Avoid deep watchers on large objects
  • watch-cleanup – Always cleanup async watchers

4. Template Optimization (MEDIUM-HIGH)

  • template-v-show-vs-if – v-show for frequent toggles, v-if for rare
  • template-key-attribute – Always use unique keys in v-for
  • template-avoid-v-if-v-for – Never use v-if and v-for on same element
  • template-static-hoisting – Let compiler hoist static content
  • template-event-modifiers – Use event modifiers instead of JS handlers

5. Composition API Patterns (MEDIUM)

  • composable-single-responsibility – One concern per composable
  • composable-return-refs – Return refs, not reactive objects
  • composable-cleanup – Handle cleanup in composables
  • composable-lazy-init – Lazy initialize expensive resources
  • composable-provide-inject – Use provide/inject for deep prop drilling

6. State Management (MEDIUM)

  • state-pinia-stores – Split stores by domain
  • state-getters – Use getters for computed state
  • state-actions-mutations – Keep mutations simple, logic in actions
  • state-subscription-cleanup – Cleanup store subscriptions

7. Async & Data Fetching (LOW-MEDIUM)

  • async-suspense – Use Suspense for async component loading
  • async-error-boundaries – Handle async errors gracefully
  • async-stale-while-revalidate – Implement SWR pattern for data fetching
  • async-abort-controller – Cancel pending requests on unmount

8. Advanced Patterns (LOW)

  • advanced-custom-directives – Create directives for DOM manipulation
  • advanced-render-functions – Use render functions for dynamic templates
  • advanced-teleport – Use Teleport for modals and overlays
  • advanced-transition-groups – Optimize list transitions

How to Use

Read individual rule files for detailed explanations and code examples:

rules/reactivity-ref-vs-reactive.md
rules/component-v-memo.md
rules/_sections.md

Each rule file contains:

  • Brief explanation of why it matters
  • Incorrect code example with explanation
  • Correct code example with explanation
  • Additional context and references

Full Compiled Document

For the complete guide with all rules expanded: AGENTS.md