feat: initialise Vue 3 SPA template

- Add Tailwind CSS v4 with light/dark theme support
- Add layout system (default, sidebar, blank)
- Add mock authentication with Pinia store and route guards
- Add error pages (404, 500) and example views
- Add Vitest with 10 example tests across stores
- Configure Prettier formatting and ESLint linting
This commit is contained in:
2026-06-18 16:36:31 +08:00
commit 0b1c394cfd
37 changed files with 5483 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
<script setup lang="ts">
import { RouterLink } from "vue-router"
</script>
<template>
<div
class="flex min-h-screen flex-col items-center justify-center gap-4 bg-surface text-foreground p-4">
<h1 class="text-6xl font-bold text-muted">404</h1>
<p class="text-lg">Page not found</p>
<p class="text-sm text-muted">The page you are looking for does not exist or has been moved.</p>
<RouterLink
to="/"
class="mt-4 rounded-md bg-primary px-4 py-2 text-sm text-white hover:bg-primary-hover transition-colours">
Back to home
</RouterLink>
</div>
</template>