diff --git a/AGENTS.md b/AGENTS.md
new file mode 100644
index 0000000..614bd66
--- /dev/null
+++ b/AGENTS.md
@@ -0,0 +1,58 @@
+# 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 `
+
+
diff --git a/app/citizen-frontend/src/components/ModuleRouterCard.vue b/app/citizen-frontend/src/components/ModuleRouterCard.vue
new file mode 100644
index 0000000..47a9251
--- /dev/null
+++ b/app/citizen-frontend/src/components/ModuleRouterCard.vue
@@ -0,0 +1,31 @@
+
+
+