What problem does it solve? Teams building Vue 3 applications without TypeScript lose static type safety and IDE autocomplete, leading to runtime errors and undocumented APIs. This Skill produces Vue 3 code in plain JavaScript with comprehensive JSDoc annotations (@typedef, @param, @returns) so projects get type coverage without a TypeScript compiler. ## Core Features & Use Cases - JSDoc-Typed Components: Generates <script setup> components with typed props, emits, slots, and provide/inject patterns using @typedef definitions. - Composable Patterns: Builds reusable composables (useCounter, useFetch, useLocalStorage) with @param and @returns annotations, including async cancellation and singleton shared state. - State Management & Testing: Implements Pinia stores (Options and Setup syntax) and Vitest test suites with mocking patterns for composables, fetch, and provide/inject. - Use Case: When migrating a Vue 2 Options API project to Vue 3 Composition API in a JavaScript-only codebase, use this Skill to rewrite components with <script setup> and add full JSDoc type coverage verified by eslint-plugin-jsdoc. ## Quick Start Ask the assistant to create a Vue 3 component or composable in JavaScript with JSDoc type annotations, for example a typed user card component with props and emits.