Skip to content

DUMB Frontend#

The DUMB Frontend is a modern web application built with Nuxt 4 (Vue 3) that provides a unified interface for managing and monitoring all DUMB services. It communicates with the DUMB API to control services, view logs, and monitor system health.


Overview#

The frontend provides:

  • Service dashboard - View and control all services from a single page
  • Real-time monitoring - Live status updates and system metrics
  • Onboarding wizard - Guided setup for first-time configuration
  • Log viewer - Real-time and historical log access with filtering
  • Settings management - Configure services, users, and preferences
  • Embedded service UIs - Access service interfaces without leaving DUMB

Default port#

Service Port
DUMB Frontend 3005

The maintained Compose file publishes the frontend directly on 3005. Built-in Traefik on 18080 routes managed service UIs; it does not replace the normal DUMB frontend listener.


Key pages#

Page Path Purpose
Dashboard / Service overview and control
Onboarding /onboarding Initial setup wizard
Settings /settings Configuration and user management
Service pages /services/[serviceId] Status, logs, embedded UI, updates, and config editors
Metrics /metrics System resource monitoring
Service Detail /services/[id] Individual service management
Login /login User authentication
Setup /setup First-time user creation

Features#

Real-time updates#

The frontend maintains WebSocket connections to receive live updates:

  • Service status - Running/stopped state, health checks
  • System metrics - CPU, memory, disk usage
  • Log streaming - New log entries as they occur

Reverse proxy must allow WebSockets

If you proxy the DUMB Frontend through Nginx or another reverse proxy, make sure WebSockets are enabled. WebSocket traffic powers real-time logs, metrics, and service status. Traefik enables WebSockets by default, but Nginx requires explicit configuration.

Service control#

Start, stop, and restart services directly from the dashboard or service detail pages. The frontend shows:

  • Current status (running, stopped, unknown)
  • Health check results
  • Auto-restart count and status
  • Last restart timestamp

Embedded service UIs#

When enabled, access service web interfaces directly within DUMB:

  • AltMount
  • Riven Frontend
  • pgAdmin
  • Seerr
  • Tautulli
  • Pulsarr
  • Maintainerr
  • mediastorm
  • Traefik Proxy Admin
  • Arr services (Radarr, Sonarr, etc.)
  • And more

This provides a unified experience without exposing individual service ports. Root-route applications such as Pulsarr, Maintainerr, mediastorm, AltMount, Traefik Proxy Admin, and the Traefik dashboard are kept in iframe context by the frontend proxy so their root-relative assets, APIs, and navigations do not collide with DUMB's own routes.

Split view mode#

Compare two pages side-by-side with the resizable split view:

  • Monitor logs while viewing dashboard
  • Compare service configurations
  • View metrics alongside service details

Service detail pages#

Each service has a dedicated detail page with:

  • Live status and health
  • Embedded UI tab when available
  • Config and log shortcuts
  • Auto-restart controls

Authentication#

The frontend supports optional JWT-based authentication:

  • First-time setup - Create the first local account or skip authentication
  • Login - Secure access with username/password
  • Remember me - Persistent sessions across browser restarts
  • User management - Create, disable, and delete users

All enabled DUMB users currently have the same control-plane permissions; there is no viewer/operator/admin role split.

See the Authentication guide for details.


Configuration#

The frontend reads its configuration from environment variables:

Variable Default Description
DUMB_API_URL http://127.0.0.1:8000 Backend API endpoint
DUMB_TRAEFIK_URL API host on port 18080 Traefik web endpoint used for embedded service HTTP and WebSocket proxying
NUXT_TELEMETRY_DISABLED 1 Disable Nuxt telemetry

DUMB automatically injects the current Traefik listener into a managed DUMB Frontend process, including when startup port reservation moves Traefik away from 18080. A separately deployed frontend must set DUMB_TRAEFIK_URL to an address reachable from that frontend container whenever Traefik uses another host or port.


Browser support#

Use an up-to-date version of these browsers:

  • Chrome/Chromium (recommended)
  • Firefox
  • Safari
  • Edge

The dependency panel's Flow view uses Mermaid 12, which targets Safari 17.4+ and ES2024-capable browsers. See the Mermaid 12 release notes for its browser requirements. Mermaid loads only when this view is opened. If the graph cannot render on an older browser, use Details to inspect dependencies; this graph requirement does not define the browser floor for the rest of the dashboard.


Next steps#