DA

Dashy

Feature-rich personal dashboard for self-hosters

Dashboards & Startpages ★ 26.6k stars Easy setup MIT

Dashy is a highly configurable personal dashboard with status checks, widgets, themes, and authentication. It targets home labbers who want a feature-packed start page. It is deployed via Docker.

Key features

  • Status checking for services
  • Many widgets and themes
  • Optional authentication
  • Cloud backup option

Pros & cons

Strengths

  • Very feature-rich
  • Lots of themes
  • Built-in status checks

Trade-offs

  • Many options to configure
  • Slower recent development

Dashy replaces

Last reviewed Aug 26, 2026 · 789 words

Dashy is the dashboard for people who want a start page to be a project. It has more widgets, themes, layout options, and authentication modes than any rival, all driven from one conf.yml, and it will happily eat a weekend. That is not a complaint. The complaint, and the catalogue's own note, is that development has slowed while Homepage has kept moving, so you are choosing the richest feature set in the category over the most active one. Here is how to run it well and how to decide.

One YAML file is the whole application

Everything Dashy shows comes from conf.yml: sections, items, icons, widgets, theme, auth. A compose file that mounts it:

services:
  dashy:
    image: lissy93/dashy:latest
    ports:
      - "4000:8080"
    volumes:
      - ./user-data:/app/user-data
    restart: unless-stopped

Put conf.yml inside user-data and it is picked up on start. A minimal config is a page title and a list of sections, each with items carrying a title, url, and icon; icons can be a URL, a Font Awesome name, or hl- prefixed names from the Dashboard Icons set, which covers almost every self-hosted app. The in-browser editor writes back to the same file, which is convenient until it is not: keep the YAML in git and treat the UI editor as a way to preview, not the source of truth.

Status checks are useful right up to about 20 services

Set statusCheck: true on an item or globally under appConfig and Dashy pings the URL from its own container and paints a green or red dot. For a small lab that is enough monitoring to notice that Jellyfin died overnight, and it costs nothing. It is not a monitor. There is no history, no alerting, and a service that returns a 401 or a self-signed certificate needs per-item tweaks (statusCheckAllowInsecure, a separate statusCheckUrl) before the dot is honest. Past a couple of dozen services, put Uptime Kuma or Gatus behind the dots and use Dashy's widget for their status instead of its built-in checks.

Widgets are where the weekend goes

There are dozens: system stats through Glances, weather, RSS, Pi-hole and AdGuard summaries, Proxmox and Portainer views, crypto prices, public IP, a code-stats board, and an iframe widget for anything else. Each one is a few lines of YAML with an API key. The trap is that many of them call third-party services from the browser, so a dashboard full of widgets is also a dashboard that leaks your visits to a dozen APIs and stalls when one of them is slow. My rule: widgets only for services I already host, everything else as a plain link. The dashboards category has lighter options if the widget list is what attracted you and the maintenance is what worries you.

Authentication: the built-in one is not security

Dashy ships front-end auth: users and hashed passwords in conf.yml, checked in the browser. It hides sections from a casual family member and does nothing against anyone who reads the config the container serves. If the dashboard is reachable from outside your LAN, put real authentication in front of it, either a reverse-proxy forward-auth with Authentik or the Keycloak integration Dashy supports natively, and let the front-end login be cosmetic. The cloud backup feature encrypts your config client-side and stores it on the maintainer's server; it is fine for a hobbyist, but a git repository is the backup I would trust.

Dashy versus Homepage versus Homarr, in one paragraph

Homepage is YAML like Dashy but with fewer knobs, faster page loads, and a deep set of service integrations that read from your apps' APIs server-side; it is the current default recommendation for a lab of any size. Homarr is drag-and-drop with no YAML and suits people who will never open a config file. Dashy wins on theming (dozens of built-in themes plus custom CSS), on layout flexibility, and on the sheer count of widgets, and it loses on the pace of releases and the time it takes to configure. All three sit inside 256 MB with ease.

What I'd do

New lab, first dashboard: Homepage. Existing Dashy install that works: keep it, pin the image tag, keep conf.yml in git, replace built-in status checks with Uptime Kuma once you are past 20 services, and put forward-auth in front before exposing it. If you enjoy tweaking a start page for its own sake, Dashy remains the most fun thing in the category, and that is a legitimate reason to pick it.

Compare Dashy

11 head-to-head comparisons.

Similar dashboards & startpages apps