> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nilbenchmarks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Dashboard

> KPI overview, alerts, budget snapshot, expiring deals, reporting status.

## Route

`/dashboard` — Default landing page after login.

## Data Sources

| Section          | API Endpoint                      | Key Fields                                                                             |
| ---------------- | --------------------------------- | -------------------------------------------------------------------------------------- |
| KPI Grid         | `GET /dashboard/kpis`             | total\_nil\_value, avg\_deal\_value, active\_deals, budget\_remaining, expiring\_deals |
| Alert Strip      | `GET /dashboard/alerts`           | pending\_verification, over\_budget\_sports, expiring\_within\_30\_days                |
| Budget Snapshot  | `GET /dashboard/budget-snapshot`  | Per-sport annual\_cap vs committed with progress bars                                  |
| Expiring Deals   | `GET /dashboard/expiring-deals`   | Deals expiring within 60 days with athlete name, sport, position                       |
| Reporting Status | `GET /dashboard/reporting-status` | verified, pending\_review, needs\_review counts, verification\_rate                    |

## Key Behaviors

* **Alert strip** is dismissible — shows pending verifications, over-budget sports, and expiring deal counts
* **Budget bars** color-code: sky blue (under 80%), amber (80-100%), red (over cap)
* **Expiring deals** show days remaining with red badge for 7 days or less
* **KPIs** are computed from **active deals only** (not expired/cancelled)
* **Budget remaining** = total annual cap minus active deal committed spend
* Premium benchmark teaser links to `/benchmarks`

## File

`frontend/src/pages/DashboardPage.vue`
