# Repository Guidelines ## Project Structure & Module Organization This repository is a private pnpm workspace. Workspace packages are declared in `pnpm-workspace.yaml` under `app/*`. The active application is `app/citizen-frontend`, a Vue 3 + Vite + Vuetify frontend written in TypeScript. Its source lives in `app/citizen-frontend/src/`: - `src/main.ts` bootstraps the app and global styles. - `src/App.vue` hosts the router view. - `src/pages/` contains route-level pages. - `src/components/` contains reusable Vue components. - `src/stores/` contains Pinia stores. - `src/router/` contains Vue Router configuration. - `src/assets/` stores static assets such as local fonts. - `src/styles/` contains global style and Vuetify settings. If a nested `AGENTS.md` exists, follow the closest one for files in that subtree. ## Build, Test, and Development Commands Run commands from `app/citizen-frontend` unless noted otherwise. - `pnpm install`: install workspace dependencies. - `pnpm dev`: start the Vite development server. - `pnpm build`: run type-checking and production build. - `pnpm build-only`: build the Vite app without type-checking. - `pnpm type-check`: run `vue-tsc`. - `pnpm lint`: run ESLint. - `pnpm lint:fix`: apply ESLint auto-fixes. - `pnpm preview`: preview the production build locally. ## Coding Style & Naming Conventions Use TypeScript, Vue 3 Composition API, and `