Stacks Dashboard
The Stacks admin dashboard provides a full-featured admin panel with 136+ routes, 150+ components, and multi-section layout.
Key Paths
- Dashboard pages:
storage/framework/defaults/views/dashboard/
- Dashboard components:
storage/framework/defaults/resources/components/Dashboard/
- Dashboard views:
storage/framework/defaults/views/dashboard/
- Dashboard layouts:
storage/framework/defaults/views/dashboard/layouts/
- Dashboard actions:
storage/framework/defaults/app/Actions/Dashboard/
- Configuration:
config/ui.ts
Dashboard Sections
Analytics & Monitoring
/dashboard — main dashboard overview
/dashboard/analytics — analytics widgets and charts
/dashboard/requests — HTTP request analytics (method, path, status, duration)
/dashboard/errors — error tracking and analysis
/dashboard/jobs — background job monitoring
/dashboard/queue — queue management and metrics
Commerce
/dashboard/commerce/products — product management (CRUD, variants, units)
/dashboard/commerce/orders — order management and processing
/dashboard/commerce/customers — customer profiles and history
/dashboard/commerce/payments — payment tracking
/dashboard/commerce/coupons — coupon and promotion management
/dashboard/commerce/gift-cards — gift card management
/dashboard/commerce/shipping — shipping methods, rates, zones
/dashboard/commerce/tax-rates — tax rate configuration
/dashboard/commerce/reviews — product review moderation
/dashboard/commerce/loyalty — loyalty points and rewards
/dashboard/commerce/delivery — delivery route tracking
/dashboard/commerce/waitlists — product waitlist management
/dashboard/commerce/receipts — receipt management
Content Management
/dashboard/content/posts — blog post CRUD
/dashboard/content/pages — page management
/dashboard/content/authors — author profiles
/dashboard/content/categories — content categorization
/dashboard/content/tags — tag management
/dashboard/content/comments — comment moderation
Data Management
/dashboard/data/users — user management (highlighted model)
/dashboard/data/subscribers — subscriber management
/dashboard/data/teams — team management
/dashboard/data/notifications — notification history
Marketing
/dashboard/marketing/campaigns — campaign management
/dashboard/marketing/email-lists — email list management
/dashboard/marketing/social — social post management
Library
/dashboard/library/components — component browser
/dashboard/library/functions — function registry
/dashboard/library/releases — release management
Settings (20+ panels)
/dashboard/settings/ai — AI/LLM configuration
/dashboard/settings/analytics — analytics settings
/dashboard/settings/app — application settings
/dashboard/settings/cache — cache configuration
/dashboard/settings/cloud — cloud/deployment settings
/dashboard/settings/database — database configuration
/dashboard/settings/dns — DNS management
/dashboard/settings/email — email settings
/dashboard/settings/environment — environment variables
/dashboard/settings/hashing — hashing configuration
/dashboard/settings/logging — logging settings
/dashboard/settings/notifications — notification settings
/dashboard/settings/payment — payment/Stripe settings
/dashboard/settings/ports — port configuration
/dashboard/settings/queue — queue settings
/dashboard/settings/search-engine — search settings
/dashboard/settings/security — security/firewall settings
/dashboard/settings/services — third-party services
/dashboard/settings/storage — storage configuration
/dashboard/settings/team — team settings
/dashboard/settings/ui — UI configuration
Deployments
/dashboard/deployments — deployment history and monitoring
/dashboard/deployments/scripts — deployment scripts
/dashboard/deployments/live-terminal — live terminal output
Utilities
/dashboard/maintenance — maintenance mode toggle
Dashboard Components (150+)
Layout Components
DashboardNavbar — top navigation bar
DashboardSidebar — side navigation
DashboardLayout — main layout wrapper
UI Components
- Buttons, Modals, Toasts, Alerts, Dropdowns
- Tables with sorting, filtering, pagination
- Forms with validation
- Charts and analytics widgets
- File upload components
- Rich text editors
Feature Components
ProductForm, ProductList, ProductVariants
OrderTable, OrderDetail, OrderStatusUpdate
UserTable, UserForm, UserProfile
PostEditor, PostList, PostPublish
CouponForm, CouponList
EmailCompose, EmailList, EmailDetail
DeploymentHistory, LiveTerminal
JobMonitor, QueueStatus
SettingsForm (generic, used by all settings pages)
Dashboard Actions
Located in storage/framework/defaults/app/Actions/Dashboard/:
- Settings actions — Get/Update for each settings category
- Commerce actions — CRUD operations for all commerce models
- Content actions — CRUD operations for content models
- Data actions — User count, subscriber count, metrics
- Deployment actions — Create, get, update deployments
- Job actions — Create, get, metrics
- Notification actions — Create, get, delivery rate
- Request actions — Analytics data
Model Dashboard Integration
Models with dashboard: { highlight: true } appear prominently:
defineModel({
name: 'Product',
dashboard: { highlight: true }, // highlighted in dashboard
traits: {
useApi: { uri: 'products', routes: ['index', 'store', 'show', 'update', 'destroy'] }
}
})
The useApi trait auto-generates dashboard CRUD views for the model.
Dashboard Development
buddy dev --dashboard # start dashboard dev server
buddy dev -d # alias
buddy build:components # build dashboard components
Port: 3002 (configured in config/ports.ts as admin)
Gotchas
- Dashboard runs on port 3002 by default (separate from frontend on 3000)
- Dashboard components use STX templating with crosswind CSS
- Dashboard routes are registered from
storage/framework/defaults/routes/, not from a generated type file
- Settings panels read/write from the corresponding
config/*.ts files
- Models with
useApi trait get auto-generated dashboard views
dashboard: { highlight: true } makes models prominent in the dashboard
- Dashboard layout uses a sidebar + navbar pattern
- All dashboard actions are in
storage/framework/defaults/app/Actions/Dashboard/
- The live terminal component streams deployment output in real-time
1---2name: stacks-dashboard-33description: Use when building or customizing the Stacks admin dashboard — adding dashboard pages, model management views, analytics widgets, commerce dashboards, content management, settings panels, deployment monitoring, job/queue management, or the 150+ built-in dashboard components. Covers the dashboard system at storage/framework/defaults/.4license: MIT5---67# Stacks Dashboard89The Stacks admin dashboard provides a full-featured admin panel with 136+ routes, 150+ components, and multi-section layout.1011## Key Paths12- Dashboard pages: `storage/framework/defaults/views/dashboard/`13- Dashboard components: `storage/framework/defaults/resources/components/Dashboard/`14- Dashboard views: `storage/framework/defaults/views/dashboard/`15- Dashboard layouts: `storage/framework/defaults/views/dashboard/layouts/`16- Dashboard actions: `storage/framework/defaults/app/Actions/Dashboard/`17- Configuration: `config/ui.ts`1819## Dashboard Sections2021### Analytics & Monitoring22- `/dashboard` — main dashboard overview23- `/dashboard/analytics` — analytics widgets and charts24- `/dashboard/requests` — HTTP request analytics (method, path, status, duration)25- `/dashboard/errors` — error tracking and analysis26- `/dashboard/jobs` — background job monitoring27- `/dashboard/queue` — queue management and metrics2829### Commerce30- `/dashboard/commerce/products` — product management (CRUD, variants, units)31- `/dashboard/commerce/orders` — order management and processing32- `/dashboard/commerce/customers` — customer profiles and history33- `/dashboard/commerce/payments` — payment tracking34- `/dashboard/commerce/coupons` — coupon and promotion management35- `/dashboard/commerce/gift-cards` — gift card management36- `/dashboard/commerce/shipping` — shipping methods, rates, zones37- `/dashboard/commerce/tax-rates` — tax rate configuration38- `/dashboard/commerce/reviews` — product review moderation39- `/dashboard/commerce/loyalty` — loyalty points and rewards40- `/dashboard/commerce/delivery` — delivery route tracking41- `/dashboard/commerce/waitlists` — product waitlist management42- `/dashboard/commerce/receipts` — receipt management4344### Content Management45- `/dashboard/content/posts` — blog post CRUD46- `/dashboard/content/pages` — page management47- `/dashboard/content/authors` — author profiles48- `/dashboard/content/categories` — content categorization49- `/dashboard/content/tags` — tag management50- `/dashboard/content/comments` — comment moderation5152### Data Management53- `/dashboard/data/users` — user management (highlighted model)54- `/dashboard/data/subscribers` — subscriber management55- `/dashboard/data/teams` — team management56- `/dashboard/data/notifications` — notification history5758### Marketing59- `/dashboard/marketing/campaigns` — campaign management60- `/dashboard/marketing/email-lists` — email list management61- `/dashboard/marketing/social` — social post management6263### Library64- `/dashboard/library/components` — component browser65- `/dashboard/library/functions` — function registry66- `/dashboard/library/releases` — release management6768### Settings (20+ panels)69- `/dashboard/settings/ai` — AI/LLM configuration70- `/dashboard/settings/analytics` — analytics settings71- `/dashboard/settings/app` — application settings72- `/dashboard/settings/cache` — cache configuration73- `/dashboard/settings/cloud` — cloud/deployment settings74- `/dashboard/settings/database` — database configuration75- `/dashboard/settings/dns` — DNS management76- `/dashboard/settings/email` — email settings77- `/dashboard/settings/environment` — environment variables78- `/dashboard/settings/hashing` — hashing configuration79- `/dashboard/settings/logging` — logging settings80- `/dashboard/settings/notifications` — notification settings81- `/dashboard/settings/payment` — payment/Stripe settings82- `/dashboard/settings/ports` — port configuration83- `/dashboard/settings/queue` — queue settings84- `/dashboard/settings/search-engine` — search settings85- `/dashboard/settings/security` — security/firewall settings86- `/dashboard/settings/services` — third-party services87- `/dashboard/settings/storage` — storage configuration88- `/dashboard/settings/team` — team settings89- `/dashboard/settings/ui` — UI configuration9091### Deployments92- `/dashboard/deployments` — deployment history and monitoring93- `/dashboard/deployments/scripts` — deployment scripts94- `/dashboard/deployments/live-terminal` — live terminal output9596### Utilities97- `/dashboard/maintenance` — maintenance mode toggle9899## Dashboard Components (150+)100101### Layout Components102- `DashboardNavbar` — top navigation bar103- `DashboardSidebar` — side navigation104- `DashboardLayout` — main layout wrapper105106### UI Components107- Buttons, Modals, Toasts, Alerts, Dropdowns108- Tables with sorting, filtering, pagination109- Forms with validation110- Charts and analytics widgets111- File upload components112- Rich text editors113114### Feature Components115- `ProductForm`, `ProductList`, `ProductVariants`116- `OrderTable`, `OrderDetail`, `OrderStatusUpdate`117- `UserTable`, `UserForm`, `UserProfile`118- `PostEditor`, `PostList`, `PostPublish`119- `CouponForm`, `CouponList`120- `EmailCompose`, `EmailList`, `EmailDetail`121- `DeploymentHistory`, `LiveTerminal`122- `JobMonitor`, `QueueStatus`123- `SettingsForm` (generic, used by all settings pages)124125## Dashboard Actions126127Located in `storage/framework/defaults/app/Actions/Dashboard/`:128- Settings actions — Get/Update for each settings category129- Commerce actions — CRUD operations for all commerce models130- Content actions — CRUD operations for content models131- Data actions — User count, subscriber count, metrics132- Deployment actions — Create, get, update deployments133- Job actions — Create, get, metrics134- Notification actions — Create, get, delivery rate135- Request actions — Analytics data136137## Model Dashboard Integration138139Models with `dashboard: { highlight: true }` appear prominently:140```typescript141defineModel({142 name: 'Product',143 dashboard: { highlight: true }, // highlighted in dashboard144 traits: {145 useApi: { uri: 'products', routes: ['index', 'store', 'show', 'update', 'destroy'] }146 }147})148```149150The `useApi` trait auto-generates dashboard CRUD views for the model.151152## Dashboard Development153154```bash155buddy dev --dashboard # start dashboard dev server156buddy dev -d # alias157buddy build:components # build dashboard components158```159160Port: 3002 (configured in `config/ports.ts` as `admin`)161162## Gotchas163- Dashboard runs on port 3002 by default (separate from frontend on 3000)164- Dashboard components use STX templating with crosswind CSS165- Dashboard routes are registered from `storage/framework/defaults/routes/`, not from a generated type file166- Settings panels read/write from the corresponding `config/*.ts` files167- Models with `useApi` trait get auto-generated dashboard views168- `dashboard: { highlight: true }` makes models prominent in the dashboard169- Dashboard layout uses a sidebar + navbar pattern170- All dashboard actions are in `storage/framework/defaults/app/Actions/Dashboard/`171- The live terminal component streams deployment output in real-time