Tomas DvorakandDevin b294026cea docs: launch post draft for repo flip
Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 19:53:33 +02:00

Dash

A self-hosted homelab dashboard. CasaOS-grade ease of use, Vercel-grade design. Single container, UI-managed, no YAML, no auth.

Dash board

Features

  • Service board — sections, drag-and-drop, multi-URL services, icon upload, four board renderers (Bento, Cards, Index, Console), dark/light themes
  • Uptime monitors — HTTP, TCP, ping, DNS, keyword, JSON-path, and push checks on a schedule, with heartbeat history and uptime stats
  • Domain watch — WHOIS/RDAP, DNS records, TLS certificate expiry, registrar and provider detection
  • System monitoring — lightweight dash-agent pushes CPU, memory, disk, network, load, temperatures, and Docker container state
  • Incidents & status pages — manual and automatic incidents, maintenance windows, public /status/:slug pages, SVG badges
  • Alerts — generic webhook notifications (Slack, Discord, ntfy compatible)
  • Observability — Prometheus /api/metrics, JSON export, CSV bulk import, importers for Homepage, Homarr, and Dashy configs

Run

docker run -d -v ./data:/data -p 3000:3000 ghcr.io/dvorinka/dash:latest

or with compose:

services:
  dash:
    image: ghcr.io/dvorinka/dash:latest
    ports:
      - "3000:3000"
    volumes:
      - ./data:/data
    restart: unless-stopped

Then open http://localhost:3000. Everything is configured from the UI.

System agent

Monitor a Linux host: create a system in the UI, copy the token, then:

dash-agent -url http://dash:3000 -token <token>

One static binary, no dependencies. See docs/installation.md for systemd and Docker setups.

Screenshots

Monitors Domains
Systems Status page

Docs

Develop

Requires Go 1.24+ and Node 20+.

npm install            # workspaces: frontend + api-client
npm run generate       # regenerate TS client from openapi.yaml
npm run dev            # vite dev on :5173, proxies /api to :8080

In another shell:

cd apps/backend
DASH_DEV=1 go run ./cmd/dash   # API on :8080 (DASH_DEV skips embedded UI)

Stack

Go + Gin + SQLite (single static binary, embeds the frontend) · React 18 + Vite + TS strict + Tailwind + shadcn/ui + dnd-kit · OpenAPI-generated client.

License

MIT

S
Description
No description provided
Readme MIT
19 MiB
0 Stars 1 Watchers 0 Forks
Languages
TypeScript 49.1%
Go 37.1%
HTML 12.2%
CSS 0.8%
Shell 0.4%
Other 0.4%