# Repository Guidelines ## Project Structure & Module Organization This repository is a Nuxt 4 application. - `pages/`: route pages (for example `pages/index.vue`). - `components/`: reusable Vue components (for example `DiskSidebarWidget.vue`, `ApiStatusBubble.vue`). - `layouts/`: shared page shells (`layouts/default.vue`). - `server/api/`: Nitro server endpoints (for example `disk.get.ts`, `version-status.get.ts`). - `assets/css/`: global styles and theme tokens (`main.css`, `malio.css`). - `public/`: static files served as-is. Keep feature logic close to usage: UI in `components/`, page composition in `pages/`, backend checks in `server/api/`. ## Build, Test, and Development Commands Use npm scripts from `package.json`: - `npm run dev`: start local dev server with hot reload. - `npm run build`: production build (client + server). - `npm run preview`: run the built app locally. - `npm run generate`: static generation when needed. There is no dedicated test script currently. At minimum, run `npm run build` before opening a PR. ## Coding Style & Naming Conventions - Language: TypeScript + Vue SFCs (`