Official agent skill

Vue Best Practices

by JetBrains in JetBrains/skills

MUST be used for Vue.js tasks. An agent skill from JetBrains/skills.

OfficialMITAuto-check passed

Install Vue Best Practices

skills CLI
$ npx skills add JetBrains/skills --skill vue-best-practices -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install JetBrains/skills vue-best-practices --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/JetBrains/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/vue-best-practices .claude/skills/vue-best-practices && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
vue-best-practices
GitHub stars
366
Used in
9 other repos
Token cost
~2.2k tokens
SKILL.md length
902 words
Files
25 (incl. references)
Skills in repo
76
Repo updated
First seen
Licence
MIT

At a glance

MUST be used for Vue.js tasks. An agent skill from JetBrains/skills.

  • Works in 5 steps: Confirm architecture before coding… → Apply essential Vue foundations (required) → Consider optional features only when… → …
  • SKILL.md covers Core Principles, 1) Confirm architecture before…, 2) Apply essential Vue… and 3) Consider optional features…, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Vue Best Practices is an agent skill from JetBrains/skills, published by the product's own GitHub organization. MUST be used for Vue.js tasks. Strongly recommends Composition API with <script setup and TypeScript as the standard approach. Covers Vue 3, SSR, Volar, vue-tsc. Load for any Vue, .vue files, Vue Router, Pinia, or Vite with Vue work. ALWAYS use Composition API unless the project explicitly requires Options API.

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 25 other files, including reference files (for example `LICENSE.md`, `SYNC.md` and `references/animation-class-based-technique.md`).

It works with Vue.js, Vite and TypeScript. The repository describes itself as: Curated agent skills collection verified by JetBrains. The licence is MIT.

Example prompts

  • “/vue-best-practices”

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Confirm architecture before coding (required)
  2. Apply essential Vue foundations (required)
  3. Consider optional features only when requirements call for them
  4. Run performance optimization after behavior is correct
  5. Final self-check before finishing

What it can do on your machine

Read from SKILL.md and the folder at commit e0f258b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Vue Best Practices loads about 2.2k tokens when it runs, and up to ~28k if it reads all its reference files. Until then it costs about 84 tokens; SKILL.md has 902 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~84
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~28k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from JetBrains/skills at commit e0f258b, republished under its MIT licence (© JetBrains). 902 words, ~2,230 tokens.

Download SKILL.mdSave it as .claude/skills/vue-best-practices/SKILL.md (or your agent's skills folder). This skill also uses 24 other files; get the full folder from GitHub.
name
vue-best-practices
description
MUST be used for Vue.js tasks. Strongly recommends Composition API with `<script setup>` and TypeScript as the standard approach. Covers Vue 3, SSR, Volar, vue-tsc. Load for any Vue, .vue files, Vue Router, Pinia, or Vite with Vue work. ALWAYS use Composition API unless the project explicitly requires Options API.
license
MIT
metadata.short-description
Follow modern Vue best practices
metadata.author
Vue.js AI
metadata.version
18.0.0
metadata.source
https://github.com/antfu/skills/tree/main/skills/vue-best-practices

Vue Best Practices Workflow

Use this skill as an instruction set. Follow the workflow in order unless the user explicitly asks for a different order.

Core Principles

  • Keep state predictable: one source of truth, derive everything else.
  • Make data flow explicit: Props down, Events up for most cases.
  • Favor small, focused components: easier to test, reuse, and maintain.
  • Avoid unnecessary re-renders: use computed properties and watchers wisely.
  • Readability counts: write clear, self-documenting code.

1) Confirm architecture before coding (required)

  • Default stack: Vue 3 + Composition API + <script setup lang="ts">.
  • If the project explicitly uses Options API, load vue-options-api-best-practices skill if available.
  • If the project explicitly uses JSX, load vue-jsx-best-practices skill if available.
1.1 Must-read core references (required)
  • Before implementing any Vue task, make sure to read and apply these core references:
    • references/reactivity.md
    • references/sfc.md
    • references/component-data-flow.md
    • references/composables.md
  • Keep these references in active working context for the entire task, not only when a specific issue appears.
1.2 Plan component boundaries before coding (required)

Create a brief component map before implementation for any non-trivial feature.

  • Define each component's single responsibility in one sentence.
  • Keep entry/root and route-level view components as composition surfaces by default.
  • Move feature UI and feature logic out of entry/root/view components unless the task is intentionally a tiny single-file demo.
  • Define props/emits contracts for each child component in the map.
  • Prefer a feature folder layout (components/<feature>/..., composables/use<Feature>.ts) when adding more than one component.

2) Apply essential Vue foundations (required)

These are essential, must-know foundations. Apply all of them in every Vue task using the core references already loaded in section 1.1.

Reactivity
  • Must-read reference from 1.1: reactivity
  • Keep source state minimal (ref/reactive), derive everything possible with computed.
  • Use watchers for side effects if needed.
  • Avoid recomputing expensive logic in templates.
SFC structure and template safety
  • Must-read reference from 1.1: sfc
  • Keep SFC sections in this order: <script> → <template> → <style>.
  • Keep SFC responsibilities focused; split large components.
  • Keep templates declarative; move branching/derivation to script.
  • Apply Vue template safety rules (v-html, list rendering, conditional rendering choices).
Keep components focused

Split a component when it has more than one clear responsibility (e.g. data orchestration + UI, or multiple independent UI sections).

  • Prefer smaller components + composables over one “mega component”
  • Move UI sections into child components (props in, events out).
  • Move state/side effects into composables (useXxx()).

Apply objective split triggers. Split the component if any condition is true:

  • It owns both orchestration/state and substantial presentational markup for multiple sections.
  • It has 3+ distinct UI sections (for example: form, filters, list, footer/status).
  • A template block is repeated or could become reusable (item rows, cards, list entries).

Entry/root and route view rule:

  • Keep entry/root and route view components thin: app shell/layout, provider wiring, and feature composition.
  • Do not place full feature implementations in entry/root/view components when those features contain independent parts.
  • For CRUD/list features (todo, table, catalog, inbox), split at least into:
    • feature container component
    • input/form component
    • list (and/or item) component
    • footer/actions or filter/status component
  • Allow a single-file implementation only for very small throwaway demos; if chosen, explicitly justify why splitting is unnecessary.
Component data flow
  • Must-read reference from 1.1: component-data-flow
  • Use props down, events up as the primary model.
  • Use v-model only for true two-way component contracts.
  • Use provide/inject only for deep-tree dependencies or shared context.
  • Keep contracts explicit and typed with defineProps, defineEmits, and InjectionKey as needed.
Show full SKILL.md (352 more words)Show less
Composables
  • Must-read reference from 1.1: composables
  • Extract logic into composables when it is reused, stateful, or side-effect heavy.
  • Keep composable APIs small, typed, and predictable.
  • Separate feature logic from presentational components.

3) Consider optional features only when requirements call for them

3.1 Standard optional features

Do not add these by default. Load the matching reference only when the requirement exists.

3.2 Less-common optional features

Use these only when there is explicit product or technical need.

  • Directives: behavior is DOM-specific and not a good composable/component fit -> directives
  • Async components: heavy/rarely-used UI should be lazy loaded -> component-async
  • Render functions only when templates cannot express the requirement -> render-functions
  • Plugins when behavior must be installed app-wide -> plugins
  • State management patterns: app-wide shared state crosses feature boundaries -> state-management

4) Run performance optimization after behavior is correct

Performance work is a post-functionality pass. Do not optimize before core behavior is implemented and verified.

5) Final self-check before finishing

  • Core behavior works and matches requirements.
  • All must-read references were read and applied.
  • Reactivity model is minimal and predictable.
  • SFC structure and template rules are followed.
  • Components are focused and well-factored, splitting when needed.
  • Entry/root and route view components remain composition surfaces unless there is an explicit small-demo exception.
  • Component split decisions are explicit and defensible (responsibility boundaries are clear).
  • Data flow contracts are explicit and typed.
  • Composables are used where reuse/complexity justifies them.
  • Moved state/side effects into composables if applicable
  • Optional features are used only when requirements demand them.
  • Performance changes were applied only after functionality was complete.

© JetBrains, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 24 other files (references) in vue-best-practices of JetBrains/skills.

  • SKILL.md
  • LICENSE.md
  • SYNC.md
  • references/animation-class-based-technique.md
  • references/animation-state-driven-technique.md
  • references/component-async.md
  • references/component-data-flow.md
  • references/component-fallthrough-attrs.md
  • references/component-keep-alive.md
  • references/component-slots.md
  • references/component-suspense.md
  • references/component-teleport.md
  • references/component-transition-group.md
  • references/component-transition.md
  • references/composables.md
  • references/directives.md
  • references/perf-avoid-component-abstraction-in-lists.md
  • references/perf-v-once-v-memo-directives.md
  • references/perf-virtualize-large-lists.md
  • references/plugins.md
  • … and 5 more

Open the folder on GitHubat commit e0f258b

Used in 9 other repositories

We found 13 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 9 other GitHub owners. This page covers the copy in JetBrains/skills, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Vue Best Practices next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Vue Best Practices compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Vue Best Practices this skillJetBrains/skills3669 repos~2.2kAutomated safety check: PassMIT
Uni Appsonofmagic/uni-app-tailwindcss-template3362 repos~1kAutomated safety check: PassMIT
Cross Platform Tauri UIifer47/markeron1.2k—~2kAutomated safety check: PassMIT
Vuetify Skilldlogue/vite-vuetify-ts-starter1811 repos~1.9kAutomated safety check: PassMIT
Uni-app-x Components and APIsfeige996/unibest2.3k—~788Automated safety check: PassMIT
Tauri Config Ipcifer47/markeron1.2k—~1kAutomated safety check: PassMIT

Similar skills

  • Uni App

    sonofmagic/uni-app-tailwindcss-template

    Comprehensive skill reference for uni-app cross-platform development framework

    336 GitHub starsUsed in 2 repos~1k tokens
    Frontend & DesignAuto-check passed
  • Cross-platform UI styling for MarkerOn Tauri app (macOS WKWebView vs Windows WebView2).

    1.2k GitHub stars~2k tokensUpdated 2 days ago
    Frontend & DesignAuto-check passed
  • Vuetify Skilld

    logue/vite-vuetify-ts-starter

    Vue Material Component Framework. An agent skill from logue/vite-vuetify-ts-starter.

    181 GitHub starsUsed in 1 repo~1.9k tokens
    Frontend & DesignAuto-check passed
  • Reference for using uni-app-x's built-in components and APIs, with one example file per item, official doc links and platform compatibility notes.

    2.3k GitHub stars~788 tokensUpdated 25 days ago
    MobileAuto-check passed
  • Tauri Config Ipc

    ifer47/markeron

    Extend MarkerOn settings, persisted config, or Tauri IPC commands.

    1.2k GitHub stars~1k tokensUpdated 2 days ago
    Frontend & DesignAuto-check passed
  • Wayfinder Development

    slimani-dev/muraqib

    A skill your agent uses for Laravel Wayfinder which auto-generates typed functions for Laravel controllers and routes.

    129 GitHub starsUsed in 1 repo~622 tokens
    Backend & APIsAuto-check passed

More from JetBrains/skills

All 76 skills in this repo
  • Playwright

    JetBrains/skills

    Official

    A skill your agent uses when the task requires automating a real browser from the terminal (navigation, form filling, snapshots, screenshots, data extraction, UI-flow debugging) via playwright-cli…

    366 GitHub starsUsed in 11 repos~986 tokens
    Auto-check passed
  • Skill Creator

    JetBrains/skills

    Official

    Guide for creating effective skills. An agent skill from JetBrains/skills.

    366 GitHub starsUsed in 122 repos~4.7k tokens
    Auto-check passed
  • Transcribe

    JetBrains/skills

    Official

    Transcribe audio files to text with optional diarization and known-speaker hints.

    366 GitHub starsUsed in 4 repos~776 tokens
    Auto-check passed
  • Imagegen

    JetBrains/skills

    Official

    A skill your agent uses when the user asks to generate or edit images via the OpenAI Image API (for example: generate image, edit/inpaint/mask, background removal or replacement, transparent…

    366 GitHub starsUsed in 3 repos~2.5k tokens
    Auto-check passed
  • Speech

    JetBrains/skills

    Official

    A skill your agent uses when the user asks for text-to-speech narration or voiceover, accessibility reads, audio prompts, or batch speech generation via the OpenAI Audio API; run the bundled CLI…

    366 GitHub starsUsed in 3 repos~1.9k tokens
    Auto-check passed
  • Screenshot

    JetBrains/skills

    Official

    A skill your agent uses when the user explicitly asks for a desktop or system screenshot (full screen, specific app or window, or a pixel region), or when tool-specific capture capabilities are…

    366 GitHub starsUsed in 6 repos~2k tokens
    Auto-check passed

Questions about Vue Best Practices

What does Vue Best Practices do?

MUST be used for Vue.js tasks. An agent skill from JetBrains/skills. Vue Best Practices is an agent skill from JetBrains/skills, published by the product's own GitHub organization.js tasks.

How do I install Vue Best Practices in Claude Code?

Run `npx skills add JetBrains/skills --skill vue-best-practices -a claude-code`. Or copy the skill folder (vue-best-practices in JetBrains/skills) into .claude/skills/vue-best-practices in your project. Claude Code loads it when a task matches its description.

How do I install Vue Best Practices in Codex?

Run `npx skills add JetBrains/skills --skill vue-best-practices -a codex`. Or copy the skill folder (vue-best-practices in JetBrains/skills) into .agents/skills/vue-best-practices in your project. Codex loads it when a task matches its description.

Can I use Vue Best Practices in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add JetBrains/skills --skill vue-best-practices -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/vue-best-practices, .gemini/skills/vue-best-practices, .github/skills/vue-best-practices and .opencode/skills/vue-best-practices in your project.

What does Vue Best Practices need to run?

SKILL.md names no scripts, command-line tools or credentials: Vue Best Practices is instructions for the agent only.

Does Vue Best Practices access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Vue Best Practices safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Vue Best Practices use?

Vue Best Practices is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Vue Best Practices use?

About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 26k tokens, read only when the agent opens those files.

What are the alternatives to Vue Best Practices?

Skills that share tags, products or a category with Vue Best Practices: Uni App (sonofmagic/uni-app-tailwindcss-template, 336 stars), Cross Platform Tauri UI (ifer47/markeron, 1.2k stars), Vuetify Skilld (logue/vite-vuetify-ts-starter, 181 stars) and Uni-app-x Components and APIs (feige996/unibest, 2.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Vue Best Practices?

JetBrains (a GitHub organization, an official publisher) maintains it in JetBrains/skills, which has 366 GitHub stars. The repository holds 76 skills in this directory. The repository was last updated on June 29, 2026.

Source: JetBrains/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.