# Vue Dashboard Navigation & Information Architecture Cleanup

Use this reference when reorganizing the FinanceManager Vue dashboard navigation, page grouping, mobile menu, and user-facing information architecture.

## Scope boundaries

- Treat this as an IA/UX-structure change, not a finance-domain feature sprint.
- Do not add providers, import sources, pricing logic, runtime writes, or booking/confirm behavior.
- Do not commit runtime DBs, real data exports, API keys, or frontend secrets.
- Keep existing unfinished/admin/roadmap pages routable if needed, but remove them from prominent user navigation unless explicitly requested.
- Preserve Preview → Confirm → Audit for any write-capable workflows.

## Preferred navigation shape

- Command Center as start page.
- Anlagen: Portfolio, Aktien & ETFs, Crypto, TrueWealth Roboadvisor, Cash.
- Budget: Budget Übersicht, Budgetstatus, Budget vs Ist, Monatsvergleich, Kategorieanalyse.
- Transaktionen: Effektive Ausgaben, Effektive Einnahmen, Buchungen prüfen, Transfers.
- Setup: Kategorien & Tags, Konten, Regeln, Seed Review / Excel übernehmen.
- Roadmap/admin/internal items should not be prominent in the user menu: Reports, Data Explorer, Fixkosten, Watchlist, Admin/Debug, Audit, Ledger, Import Wizard, grocery optimizer, narrow import/debug pages.

## Placement rules

- `Position hinzufügen` is not a main nav item. Put actions contextually:
  - Aktien & ETFs: Aktie/ETF hinzufügen, Kauf erfassen, Verkauf erfassen, Dividende erfassen.
  - Crypto: Coin hinzufügen, Bestand erhöhen, Transfer, Wallet hinzufügen.
  - TrueWealth: TrueWealth-Wert aktualisieren.
  - Cash: Cash-Konto hinzufügen, Einzahlung erfassen, Auszahlung erfassen.
- `Reports` is not a main nav item. Link report actions contextually from Command Center, Portfolio, Crypto, Budget.
- `Wallets` is not a main nav item. Wallets belong inside the Crypto workspace as tabs/sections: Coins, Wallets, Transfers, Verlauf, Reports.

## Implementation pattern

1. Update the central navigation source of truth first, typically `frontend/src/navigation/userNav.ts`.
2. Keep `SidebarNav.vue` dumb: render desktop groups, mobile bottom nav, mobile more menu, and full-screen fallback from that source.
3. Add route aliases when IA changes paths but existing pages remain valid, e.g. `/setup/categories`, `/setup/accounts`, `/portfolio/truewealth`, `/portfolio/cash`.
4. Create lightweight structural pages for new IA buckets if backend data already exists; do not invent new business logic.
5. Command Center should show compact portfolio/budget/tasks/warnings and context CTAs, not raw provider details, IDs, or large tables.
6. For mobile, keep only the highest-value quick links in the bottom nav and put secondary working areas in More. Avoid hiding required routes entirely; use the fallback drawer for reachability.

## Test pattern

Add/update Vitest coverage for:

- New desktop groups and labels.
- Removed prominent nav items: Position hinzufügen, Reports, Wallets.
- Mobile bottom nav and More menu links.
- Fallback mobile drawer links.
- Route existence for all requested paths.
- Crypto workspace includes Wallets section/tabs and the desktop main nav has no Wallets link.
- Command Center does not expose technical provider/runtime details prominently.

Browser sanity checklist after restart:

- `/`, `/portfolio`, `/equity`, `/crypto`, `/portfolio/truewealth`, `/portfolio/cash`, `/planning/budget`, `/planning/budget/status`, `/planning/budget/analysis/budget-vs-actual`, `/planning/budget/expenses/actual`, `/planning/budget/expenses/review`, `/setup/categories`, `/setup/accounts` return 200 and render.
- Browser console has no JS errors.
- Desktop nav contains expected labels and excludes removed prominent items.

## Verification gates

Run before final report:

- Python compile.
- Backend pytest.
- Frontend Vitest.
- Frontend build.
- Source secret scan.
- Frontend build secret scan.
- Git safety.
- `git diff --check`.
- Browser sanity.
- Commit, push, and remote hash verification.

## Reporting format

For this user, conclude with direct yes/no status for each requested IA goal, then tests/build/git safety, commit hash, push status, links, and known limits. Avoid lengthy implementation diary unless asked.