Dashy – A self-hosted homepage for your homelab
github.com
github.com
* homer - https://github.com/bastienwirtz/homer
* heimdall - https://github.com/linuxserver/Heimdall
* dashmachine - https://github.com/rmountjoy92/DashMachine
* flame - https://github.com/pawelmalak/flame
In a slightly different vein:
* netdata - https://github.com/netdata/netdata
* cockpit - https://github.com/cockpit-project/cockpit/
And then of course there's grafana which is definitely not for the feint of heart.
There are so many page-of-bookmarks style dashboards, but if I'm being honest, none of them are all that great. Of the above, I like heimdall the best for its cleanliness and simplicity, but its hardly customizable.
I think we'd be much better served by a really well thought-out framework for self-hosted/homelab dashboards with excellent API documentation that has pluggable modules for things like authentication, data sources (e.g. docker, db, config file, service APIs), and the front end. This would allow people to easily build the dashboard with the features they want, and make it even easier for people to contribute a variety of "themes" for endless customization of how things are displayed.
I haven't looked into it properly but I think this is a premise of https://sandstorm.io/
Their goal was not a dashboard, they set out to become heroku for self hosted services when they announced it. They do aim for standardized authentication however, I'm guessing you're referencing that.
Sandstorm provides security by sandboxing applications and giving them a capability-based API (via Cap'n Proto RPC over a unix socket) for connecting to the outside world and other grains. Grains can also export capabilities, which would allow for the pluggable modules envisioned by kayson. Sadly, few grains do this as of yet. In my limited experience with this part of Sandstorm, the developer experience is still rough around the edges.
Which one is the best? :-D
We've taken the zero config path for Robusta (https://github.com/robusta-dev/robusta) but we're focused only on kubernetes so it's a bit easier. Over time we're hoping to make it more and more pluggable. (E.g. see our blocks API which defines a visual display format that works for everything from slack messages to web dashboards: https://docs.robusta.dev/master/developer-guide/actions/find...)
* hajimari - https://github.com/toboshii/hajimari
Autodiscovery based on Kubernetes Ingress objects is a really nice feature: you configure the details using labels (name, icon etc.) in case the Ingress is not exactly what you want.
I'm using Wiki.js and it's customizable navigation menu is much better with wiki as a starting site.
If you just want canned dashboards there's so many premade Grafana dashboards that work seamlessly with Prometheus /exporters. If you aren't customizing you can get a lot of mileage out of the premade stuff.
I'd be interested in hearing from people who have set this (or an alternative) up and use it daily/regularly. For me I just always go to myservice.mydomain.com directly. I normally only have to type 2-3 letters before it pops up for me and it's way faster than going to first to a dashboard/launch page, finding my service, and clicking on it.
Tools like Dashy or Flame (the one I use) are great for that.
One home page internal to our home is perfect.
Thanks a lot!
If you don't need all the bells and whistles from this (including auth!), I built a homelab status page server that's designed for someone like me that just wants to whip up an SVG in draw.io or diagrams.net and make it semi-interactive:
https://github.com/mmastrac/stylus/
I use it to keep tabs on a small fleet of equipment and get at-a-glance status for everything.
To save one more click from the dashboard and allow desktop integration, I now use these:
- https://github.com/nativefier/nativefier - https://github.com/filips123/PWAsForFirefox
.. and wrap self-contained apps to be started from the Start Menu, xfce4-appfinder or (no self-contained apps AFAIK) the Android launcher
I'd expect a "caveat emptor: requires the cloud", but certainly not a "warning: self hosted".
What strange times we live in.
I decommissioned my homelab a couple years back because there was just no longer the need. But there is still a pretty hardcore community around it (just checkout /r/homelab if you have a burning hole in your wallet).
It's a fine term.
I call it of course my datacenter.
It's nothing more than an old PC and a NAS if I'm honest. The "lab" part is all virtual. Does the job though!
I only really use mine for testing different web setups for work at the moment
Personally, I just add a bunch of A records to my DNS server. Pretty easy to remember that the photos are at photos.domain.com.
In other words, they are objectively distracting.
They feel like the modern equivalent of web pages in the 90s that would have excessive images like the Under Construction image or the GIF of the spinning siren : visual clutter.
It's the new age of the blink tag and marquee text ;)
I have junk emitting metrics from systems and sensors all over my house to InfluxDB (usually via telegraf) and thought this might be a more fun alternative to grafana.
Homelab is really a term for running your software in-house (at home specifically), in your own server rack, or something that resembles one (See: LackRacks[0]) for those with different budgets. It's a (software) test lab, with the "lab" part presumably coming from "computer lab".
I've always thought of "Dashboards" of this kind as a form of intranet page linking to internal services, available to everyone on the network.
1: www.etesync.com