I’ve built an information dashboard that I would like to share with my neighbors as a view only without a login.
We have a community water well that serves 8 houses and I do the maintenance on it. With the advent of Z-wave 800 Long Range, I can now reach the well house location approx 550’ away from my house, so the time is right to add this to HA.
I’ve added some instrumentation to send analog sensor outputs, so that I can remotely view deep well pump running status, holding tank level, system pressure, etc. All this is displayed on a dashboard dedicated to the well system. I would like to share this dashboard as a view only webpage that is publicly available without a login to any of the neighbors that care to see this info.
What is the best/easiest way to achieve this?
Hi, welcome to the forum!
You want to make this publicly (over the internet) available?
Yes, to anyone who has the link. I really can’t see any reason why anyone else would care about the system data of a random well in some unknown rural neighborhood, so I don’t think privacy is an issue. And there is no ability to control any pumps, etc.
I know scammers can be creative, but I don’t think there is anything here to see.
Interestingly Balloob just shared this: Export cards to png/jpeg - #16 by balloob
Interesting but not what I’m looking for. I need live data. I’m not looking to show off what I’ve done, but to provide info for the other water users for several reasons. One is that ,maybe, just maybe some of them may look at it during times of hot weather and heavy usage and decide to voluntarily curtail their usage.
But the other is that I have volunteered for these maintenance duties due to my skill set and while it is now very reliable, I’m not always available and I do plan to be even less available in the future, so someone else will have to step up and do their part. Information is key to being proactive rather than reactive.
And HA provides that nicely. I just gotta feed it in a friendly manner to the unwashed masses.
So this is why I don’t want simple screenshots or the requirement of a log in
Every time the URL is loaded it takes a snapshot of the current dashboard. How much more live do you need?
This is pretty much the only way you are going to be able to share something that does not give full access to your HA instance.
The only other way I can think of would be writing your own web page that interfaces to the HA API.
That’s sad. I was looking to do something similar (and not averse to actually writing a page that makes API calls, though I don’t yet have a clue how!) I would really expect this to be a common use case.
PNGs of current status are great when there’s only one page of data, but you can’t drill down. In my case, i want my family to see the data from my weather station (I’m also not averse to making them login, but it just seems unnecessary). But they shouldn’t see all the data on the front page. If they want “hourly humidity” they can click on the current value to see the graph
Why would exposing a single dashboard cause the entire instance to be exposed?
What about running NGINX or Caddy or Traefik as a reverse proxy. Each of those has mechanisms built-in to protect against brute force attacks. You could also leverage Cloudflare to mitigate any potential DoS attacks.
IMHO, the ideal way to do this is to use a domain or subdomain name, register the DNS with Cloudflare, use NGINX or other reverse proxy to route to just that single dashboard.
No unnecessary port forwarding (except for the proxy).
While I haven’t given this next one much thought, what about using Kiosk Mode?
Because there is no way to just “expose a single dashboard”. Home assistant is hobbyist software for the home and not intended for public / corporate use as it lacks security tools like RBAC.
You could install grafana and create a public dashboard or behind a user you share with your neighbours.
- Setup Influx as datasource
- Configure influx integration in home assistant to push data to influx
- Set up grafana
- Configure influx as datasource in grafana
- Build the dashboard with your entities
- Setup reverse proxy to make grafana publicly available
- Make the dashboard public or make it available for a shared user account
That is what I would do.
Grafana is also a way better and easier tool to build dashboards.
I mean it is basically the industry standard for dashboards.