vue-expert-js

Generates Vue 3 components and composables in JavaScript with JSDoc type annotations.

Updated Aug 2, 2026
One-click install
npx skills add https://github.com/jeje-it/template-projet --skill vue-expert-js-jeje-it
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: vue-expert-js
Source: https://github.com/jeje-it/template-projet/tree/main/.agents/skills/vue-expert-js
Command: npx skills add https://github.com/jeje-it/template-projet --skill vue-expert-js-jeje-it

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

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.

Frequently Asked Questions about vue-expert-js

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

FAQPage Schema
How do I add types to Vue 3 without TypeScript?▼

Use JSDoc annotations in plain JavaScript files. Define object shapes with @typedef, annotate refs with @type {import('vue').Ref<T>}, and document functions with @param and @returns. Verify coverage with eslint-plugin-jsdoc.

How to type Vue props and emits with JSDoc?▼

Define a @typedef object describing each prop, then annotate defineProps with @type. For emits, declare the event signatures in a @typedef and pass the event names or validation functions to defineEmits.

Can I use Pinia with JavaScript instead of TypeScript?▼

Yes. Pinia works fully in JavaScript using either Options or Setup store syntax. Add JSDoc @type annotations to refs and computed values inside the store, and document actions with @param and @returns for type hints.

Does JSDoc typing work with Vue composables?▼

Yes. Composables support @template generics, @param for inputs, and @returns referencing a @typedef of the returned refs and functions. IDEs like VS Code provide autocomplete and type checking from these annotations.

When should I avoid JSDoc typing and use TypeScript instead?▼

Choose TypeScript when you need compile-time enforcement, complex generic inference, or strict CI type gates. JSDoc typing suits JavaScript-only codebases, quick prototypes, and teams avoiding a TS build step.