Built-in Pages
The pages Thunder UI ships with, which flag turns each one on, and how to replace them.
Beyond the generated CRUD screens, Thunder UI ships a handful of complete pages.
| Page | What it is | Flag |
|---|---|---|
| Overview | Placeholder landing page - replace it via overrides/routes.tsx | — |
| Tenant select | Tenant picker and creation form | — |
| Wallet | Balance, transfer, receive via QR, currency swap, ledger, PDF export | VITE_ENABLE_WALLET |
| Notifications | Popover, mobile sheet, full page, polled unread count | VITE_ENABLE_NOTIFICATIONS |
| Users | Card view with ban and overdraft-limit actions | VITE_ENABLE_USERS |
| Not found | 404 | — |
All three flags are off by default. See Environment Variables.
Replacing One
overview, wallet and notifications are route keys like any other. Supplying just a Component keeps the built-in's icon, priority and permission checks:
overview: { Component: MyDashboard },The Overview page exists specifically to be replaced - it is a placeholder, and a real dashboard is usually the first thing a project builds. See Route Overrides.
Backends Behind Them
| Page | Backed by |
|---|---|
| Wallet | thunder-core's double-entry wallet |
| Users, tenant select | thunder-core's authentication and multi-tenancy |
| Notifications | the Triggers service, not your main API |
Onboarding
src/components/onboarding.tsx is a first-launch carousel that ships with an empty screen list, so nothing shows. Add entries to its Screens array to enable it. The file is outside src/core/, so it is yours to edit directly.