Skip to content
cccskills
FreePublished on GitHub

vue-frontend-expert

Expert guide for Vue 3 (Composition API), Nuxt 3, and Pinia. Covers advanced reactive state management, `<script setup>` syntax, Vue Router, VueUse, and SPA/SSR architectural patterns in English and Indonesian.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md6.4 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Vue Frontend Expert (Vue 3 / Nuxt 3)

English | Bahasa Indonesia


<a name="english"></a>

English

Orchestration & Integration

Connects and orchestrates with relevant domain skills:

  • modern-web-guidance — HTML5/CSS standards, modern browser APIs, and accessibility guidelines.
  • design-system-architect — Building headless UI components using Radix Vue or VueUse components.
  • modern-css-native-expert — Native CSS anchor positioning, View Transitions, container queries, and @starting-style.
  • tailwind-expert — Styling Vue/Nuxt components with Tailwind CSS v4.
  • ui-ux-pro-max — Design intelligence, layout hierarchies, and Vue component tokens.
  • visual-ui-auditor — Multimodal vision auditing of rendered Vue/Nuxt views.
  • anti-slop — Anti-slop component craft, zero placeholder stubs, complete reactivity implementations.
  • performance-web-vitals — Optimizing Nuxt 3 SSR metrics (LCP, INP, CLS).

Description

Production-grade guidance for building highly reactive and scalable frontend applications using Vue 3 (Composition API) and Nuxt 3. Covers the latest ecosystem tools including Pinia for state management, VueUse for composables, and Tailwind CSS v4 integration.

Trigger Conditions

Activate this skill when the user is:

  • Scaffolding a new Vue 3 or Nuxt 3 project.
  • Writing or refactoring Vue components using <script setup> and Composition API.
  • Managing global state with Pinia.
  • Handling client-side routing with Vue Router or Nuxt's file-based routing.
  • Implementing SSR (Server-Side Rendering) or SSG (Static Site Generation) using Nuxt 3.

Core Concepts

1. Vue 3 Composition API & <script setup>

Use the <script setup> syntax by default. It provides better type inference, less boilerplate, and superior performance compared to the Options API.

<script setup lang="ts">
import { ref, computed, onMounted } from 'vue'

const count = ref(0)
const doubleCount = computed(() => count.value * 2)

function increment() {
  count.value++
}

onMounted(() => {
  console.log('Component is mounted!')
})
</script>

<template>
  <button @click="increment">Count is: {{ count }} (Double: {{ doubleCount }})</button>
</template>

2. Global State Management (Pinia)

Pinia is the official state management library for Vue. Avoid Vuex in modern applications.

// stores/counter.ts
import { defineStore } from 'pinia'
import { ref, computed } from 'vue'

export const useCounterStore = defineStore('counter', () => {
  const count = ref(0)
  const doubleCount = computed(() => count.value * 2)
  function increment() {
    count.value++
  }

  return { count, doubleCount, increment }
})

3. Nuxt 3 Architecture

For SSR, SEO optimization, and file-based routing, use Nuxt 3.

  • Data fetching: Use useAsyncData or useFetch to prevent hydration mismatches.
  • Server API: Utilize the server/api/ directory for Nitro API routes.

4. The VueUse Collection

Always leverage VueUse for common composables (e.g., useWindowSize, onClickOutside, useStorage) instead of writing custom composables from scratch.


Best Practices

  1. Ref vs Reactive: Prefer ref for primitive values and reactive for deeply nested objects. When in doubt, default to ref.
  2. Define Macros: Use defineProps and defineEmits in <script setup> for typed props and events.
  3. Avoid Watchers when possible: Rely on computed properties instead of watch to derive state. Use watch only for side-effects (e.g., API calls, DOM manipulation).
  4. V-Model: Use the updated v-model binding in Vue 3.4+ with defineModel() for cleaner two-way data binding between components.

<a name="bahasa-indonesia"></a>

Bahasa Indonesia

Integrasi Orkestrasi

Terhubung dan mengorkestrasi skill domain yang relevan:

  • modern-web-guidance — Standar HTML5/CSS, API browser modern, dan pedoman aksesibilitas.
  • design-system-architect — Komponen headless UI menggunakan Radix Vue atau VueUse.
  • modern-css-native-expert — CSS anchor positioning native, View Transitions, container queries, dan @starting-style.
  • tailwind-expert — Penataan gaya komponen Vue/Nuxt dengan Tailwind CSS v4.
  • ui-ux-pro-max — Kecerdasan desain UI/UX, hierarki tata letak, dan token komponen Vue.
  • visual-ui-auditor — Audit visual multimodal untuk tampilan antarmuka Vue/Nuxt yang dirender.
  • anti-slop — Penegakan anti-slop, nol stub atau placeholder, implementasi reaktivitas penuh.
  • performance-web-vitals — Optimasi metrik SSR Nuxt 3 (LCP, INP, CLS).

Deskripsi

Panduan tingkat produksi untuk membangun aplikasi frontend reaktif dan terukur menggunakan Vue 3 (Composition API) dan Nuxt 3. Mencakup pengelolaan state dengan Pinia, utilitas VueUse, dan integrasi Tailwind CSS v4.

Kondisi Pemicu

Aktifkan skill ini ketika pengguna sedang:

  • Memulai proyek Vue 3 atau Nuxt 3 baru.
  • Menulis ulang (refactoring) komponen ke <script setup> dan Composition API.
  • Mengelola state global dengan Pinia (bukan Vuex).
  • Menerapkan SSR (Server-Side Rendering) dengan Nuxt 3.

Implementasi Pola Kunci (Vue 3 & Nuxt 3)

1. Komponen Reaktif Modern dengan <script setup lang="ts">

<script setup lang="ts">
import { ref, computed, onMounted } from 'vue'

const jumlah = ref(0)
const kelipatanDua = computed(() => jumlah.value * 2)

function tambah() {
  jumlah.value++
}

onMounted(() => {
  console.log('Komponen Vue 3 berhasil dimuat!')
})
</script>

<template>
  <button 
    @click="tambah"
    class="px-4 py-2 bg-slate-900 text-white dark:bg-slate-100 dark:text-slate-900 rounded font-medium"
  >
    Jumlah: {{ jumlah }} (Kelipatan: {{ kelipatanDua }})
  </button>
</template>

2. Store Global Pinia dengan Pola Setup Store

// stores/counter.ts
import { defineStore } from 'pinia'
import { ref, computed } from 'vue'

export const useCounterStore = defineStore('counter', () => {
  const count = ref(0)
  const doubleCount = computed(() => count.value * 2)
  function increment() {
    count.value++
  }

  return { count, doubleCount, increment }
})

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Expert guide for automated and manual Web Accessibility (a11y) testing — axe-core, Pa11y, Playwright a11y, screen reader testing, and WCAG 2.2 Level AA/AAA compliance / Panduan ahli pengujian aksesibilitas web.

The English summary is being prepared. Showing the original description.

roedyrustam/vibes-plug112Updated Oct 22, 2026

Expert guide for intelligent model cascading and routing — complexity-scored task routing from Fast (Composer 2.5, Grok 4.7/4.6) to Medium (Gemini 4 Argon, GPT-5.6 Sol, Claude Opus 5.5) and High (Claude Sonnet 5.5, Claude Fable 5.1, Muse Wonder) / Panduan ahli untuk kaskade dan routing model cerdas.

The English summary is being prepared. Showing the original description.

roedyrustam/vibes-plug112Updated Oct 22, 2026

Expert guide for intelligent model cascading and routing — complexity-scored task routing from Flash/Haiku to Sonnet/Opus/Astra, dynamic escalation with quality gates, 40-60% token cost reduction while maintaining output quality / Panduan ahli untuk kaskade dan routing model cerdas — routing tugas berbasis skor kompleksitas dari Flash/Haiku ke Sonnet/Opus/Astra, eskalasi dinamis dengan gerbang kualitas, pengurangan biaya token 40-60% dengan kualitas output terjaga.

The English summary is being prepared. Showing the original description.

roedyrustam/vibes-plug112Updated Oct 22, 2026

Master guide for Affective Computing, emotional AI, and real-time sentiment analysis through native multimodal tokens (voice intonation and facial micro-expressions) / Panduan utama komputasi afektif, AI emosional, dan analisis sentimen real-time melalui token multimodal native.

The English summary is being prepared. Showing the original description.

roedyrustam/vibes-plug112Updated Oct 22, 2026

Expert guide for Affective Computing, emotional AI, and real-time sentiment analysis through native multimodal tokens (voice intonation and facial micro-expressions) / Panduan ahli komputasi afektif, AI emosional, dan analisis sentimen real-time melalui token multimodal native.

The English summary is being prepared. Showing the original description.

roedyrustam/vibes-plug112Updated Oct 22, 2026

Expert guide for AI-assisted coding workflows — agentic code generation, multi-agent code swarms, self-healing CI/CD, automated PR review, spec-to-code pipelines, codebase knowledge graphs, and human-in-the-loop approval gates / Panduan ahli untuk workflow pengkodean berbasis AI — generasi kode agentic, code swarm multi-agen, CI/CD self-healing, review PR otomatis, pipeline spec-to-code, knowledge graph codebase, dan gate persetujuan human-in-the-loop.

The English summary is being prepared. Showing the original description.

roedyrustam/vibes-plug112Updated Oct 22, 2026

See all skills by roedyrustam

Report a problem with this skill