ask-vue-architect
Original:🇺🇸 English
Translated
1 scriptsChecked / no sensitive code detected
Vue 3 scaffolding for Laravel Inertia, Nuxt, or Vite. Composition API + TypeScript.
10installs
Added on
NPX Install
npx skill4agent add navanithans/agent-skill-kit ask-vue-architectTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →<critical_constraints>
❌ NO → causes full reload, use
❌ NO axios.post for forms → use from Inertia
❌ NO hardcoded URLs → use helper (Ziggy)
✅ MUST use
✅ MUST detect stack flavor before scaffolding
</critical_constraints>
<detection>
Check project for:
- `inertiajs/inertia-laravel` or `resources/js/Pages` → Inertia (priority)
- `nuxt.config.ts` → Nuxt (auto-imports)
- `vite.config.ts` only → Vite SPA (manual imports, vue-router)
</detection>
<a href=""><Link>useFormroute()<script setup lang="ts"><inertia_rules>
Props: from Laravel Controller, not fetched in onMounted
ts
defineProps<{ user: App.Models.User; errors: Record<string, string> }>();Links: (not )
<Link href="/dashboard"><a>Forms:
ts
const form = useForm({ email: '', password: '' });
form.post(route('login'), { onFinish: () => form.reset('password') });Errors:
:error="form.errors.email"Global state:
</inertia_rules>
usePage().props.auth.user<persistent_layouts>
ts
import AppLayout from '@/Layouts/AppLayout.vue';
defineOptions({ layout: AppLayout });</persistent_layouts>
<state_management>
- Local: for UI state
ref() - Global (Inertia): for auth, flash messages
usePage() - Complex client-side: Pinia (Setup Store syntax) </state_management>