From gdu
Pinia state management for Vue/Nuxt applications. Activates on store files to enforce Setup Store syntax, storeToRefs destructuring, and focused single-domain stores. Use when creating or editing Pinia stores, composables with shared state, or store-consuming components.
How this skill is triggered — by the user, by Claude, or both
Slash command
/gdu:piniaThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Setup Store syntax only. `storeToRefs()` for state destructuring. One domain per store.
Setup Store syntax only. storeToRefs() for state destructuring. One domain per store.
Naming — use + domain + Store: useUserStore, useCartStore.
Components — const { user } = storeToRefs(store) for state, store.login() for actions.
Async — always try/finally to reset loading state.
Persist — { persist: true } third argument.
When CELLM_DEV_MODE: true: after store implementation, write feedback entry to dev-cellm-feedback/entries/pinia-{date}-{seq}.md. Note which store patterns caused friction, whether storeToRefs was consistently used, and which state management anti-patterns were detected. Format and lifecycle: see dev-cellm-feedback/README.md.
state(), getters:, actions:storeToRefs — loses reactivity$state mutation — use actionsany in stores — fully typednpx claudepluginhub murillodutt/cellm --plugin gduManage shared application state with Pinia stores using Options or Setup syntax. Includes DevTools support, type safety, and lazy loading.
Guides Pinia v3 setup for Vue 3 state management with defineStore, getters, actions, option/setup syntaxes, Nuxt SSR, Vuex migration, hydration, and testing.
Provides Vue 3 expertise on Composition API, Pinia stores, Nuxt 3, Vue Router, custom directives, provide/inject, transitions, and Volar config. Use for building components, state design, routing, and reactivity debugging.