vue-expert-js

Develop type-safe Vue 3 components and composables using JavaScript with JSDoc.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

It solves the challenge of building and maintaining Vue 3 codebases without TypeScript by providing reliable, consistent patterns for type-safety and structure using JSDoc.

Core Features & Use Cases

  • Vue 3 JavaScript-Only Guidance: Configure components using <script setup> with JavaScript (no TypeScript) while keeping a clean Composition API structure.
  • JSDoc-Based Type Safety: Add @typedef, @type, @param, and @returns so IDEs and reviewers get strong type hints and clearer contracts.
  • ESM and Modern Patterns: Use ESM modules and .mjs when needed, following contemporary Vue/Vitest/Vue Router-friendly conventions.
  • Use Case: Migrate a Vue 2 Options API app to Vue 3 Composition API using JavaScript-only files, while keeping maintainability through JSDoc typings.

Quick Start

Use this skill to design a Vue 3 component and its composable in JavaScript-only with JSDoc typing, and explain how to validate props, define emits, and structure tests with Vitest.

Frequently Asked Questions about vue-expert-js

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

FAQPage Schema
How do I build Vue 3 apps with JavaScript and JSDoc instead of TypeScript?

You can build Vue 3 apps with JavaScript by using JSDoc annotations like `@typedef` and `@param` to provide type hints and enforce component contracts without needing TypeScript syntax or `.ts` files.

What is the best way to migrate Vue 2 Options API code to Vue 3 Composition API in plain JavaScript?

Migrating Vue 2 to Vue 3 Composition API in plain JavaScript involves restructuring components using `<script setup>` and applying JSDoc typings to maintain code readability and type-safe composable APIs.

Can I get type safety in Vue 3 composables without using TypeScript?

Yes, you can achieve type safety in Vue 3 composables without TypeScript by adding JSDoc annotations for `@param` and `@returns`, allowing your IDE to provide strong type hints and reduce API ambiguity.

Does this approach support ESM modules and Vitest for Vue 3 JavaScript projects?

Yes, this approach supports ESM modules and `.mjs` files alongside Vitest validation, ensuring your Vue 3 JavaScript-only components and composables follow contemporary testing and module conventions.

How do you define props and emits in Vue 3 JavaScript-only components?

In Vue 3 JavaScript-only components, you define props and emits using standard Composition API patterns within `<script setup>`, supplemented by JSDoc to establish clear, type-safe contracts for reviewers and IDEs.

Why use JSDoc for Vue 3 components instead of TypeScript?

Using JSDoc for Vue 3 components provides reliable type-safety and structure without TypeScript syntax, allowing projects to maintain strict JavaScript-only environments while still getting strong IDE type hints.