// the find
lissy93/dashy
🚀 A self-hostable personal dashboard built for you. Includes status-checking, widgets, themes, icon packs, a UI editor and tons more!
Dashy is a self-hosted start page for homelabs and internal tooling, pairing a Vue frontend with a small Node backend that does the server-side work (status checks, config saves). It's aimed at people with a pile of self-hosted services who want one page listing them with live up/down status, search, and optional widgets pulling data from those services.
Status and ping checks run through dedicated server endpoints (status-check.js, ping-check.js, cors-proxy.js) rather than purely in the browser, which avoids the CORS/mixed-content breakage that hits client-only dashboard projects. The config editor lets you edit the YAML live in the UI with schema validation and export it back to disk, so it works equally well as a GitOps-managed file or a click-around app. Icon handling is genuinely broad — favicon auto-fetch, several icon pack integrations, and homelab-specific icon sets — so you rarely need to source icons yourself. Docker images are multi-arch and shipped to both Docker Hub and GHCR with real CI (lint, build, release workflows), which is more release discipline than most projects this size bother with.
Built-in basic auth stores SHA-256 password hashes directly in the plaintext YAML config, so the config file itself becomes a credential store with no salting mentioned — fine for a trusted homelab, not something to expose further. Despite the PWA/'lightweight' framing, you need the full Node server running for status checks and config saving, not just static files, unlike some of the alternatives it lists (Homer). Multi-page support is page-level only — a single large page with hundreds of items is still one YAML blob with no sub-file composition within a page. The widget library is a long tail of individual Vue components talking to specific third-party services (AdGuard, crypto prices, flights, etc.), which is a lot of surface area to keep working as those external APIs change.