First of all I hope I chose the right category. I could also see this going into Development.But feel free to move it wherever it makes the most sense.
I would like to pitch you the idea I had to really streamline and centralize all the content and information about Home Assistant that is floating around on the web.
Let me illustrate the Issues I want to fix by telling my “user story” that I’m going through when I want to acquire a new smart gadget.
Buy a smart dishwasher
Requirements:
Should work with HA as seamlessly as possible
OFFLINE CAPABILITIES
Good Quality Product with long lifetime
Affordable
If possible big developer community around it
Hackable / DYIable
…
Steps:
Check on Home Assistant Documentation and Forums
Find a cool product
Too bad, not available in my market
Find a product through googling
No integration, only "smart"phone App
Find another product
Integration, nice
According to review the product sucks
Yes another product
Integration, but barely maintained. I can work with that I guess
Product seems alright
You need to create a dev application and API key. I’m getting a bad feeling about this
It costs an arm and a leg
Desperately I create a forum Topic here asking for help. I get a good advice and I’m relatively happy with my decision once I get it up and running. But oh, I overlooked, it does use API keys and is not working offline. Oh well, this cost my already a lot of timer. Whatever…
Issues:
First and foremost I would like to have a device which works well with HA. If it does not do that, I don’t need it to be smart at all
For this the “Works with Home Assistant” initiative is great but right now it is only a few brands AND there is no central place where I can search for device. I have to go trough BLOG POSTS to find the correct brands and then search for these specifically if they have a kind of device I’m looking for
The documentation pages have no information on the availability and pricing
The Product pages of course usually don’t have information whether this particular model works with Home Assistant
I have to make accumulate this information on my own
The Communities have often times helpful people where I can ask a question and likely will find help. But it is unlikely the next person finds this question again and has similar requirements as me
…
My Proposal
A community managed website that brings all of this information together and makes it easily accessible for anyone who strolls by.
Features:
Directory of Brands along directory of supported models
Information about compatibility with HA
A set of resources for each brand or model (among others):
Known issues
Automations and Blueprints with possibilty to import into HA
Tutorials
Purchasables (list of places where I can get a certain with price and market availability information)
Discussions
Preconfigured YAML files or specified config flows
Web Resouces like links to external helpful sites
etc etc
I put some time in to make a basic project from a template. It is little more than a prototype right now - I’m no the best in UI - but it already hints at what could be.
You can look at it yourself. It is available at this domain. You can log in via github although there seems to be a little bug when logging in the first time where you get an internal server error. But after reload it should work.
What I’m looking for
firstly I would like your feedback. Do you think that’s a crazy idea or something worth pusueing
other people who share my pain and want to do something about it
if there is enough interest and maybe some helpful hands to get this off the ground
Lastly, a little information about myself:
I’m a full time web developer
35 years old
for years now, smart home is my hobby but it has become a lot more
I came from FHEM but about 4 years ago discovered Home Assistant and saw the light
I already peeked into the development side of HA and did a few contributions in some places but did not work on a larger scale project yet
So, as I said. Any interaction is appreciated and I’m curious what your thoughts are. I’m pretty excited about the thought that this could become reality.
I’m personally aware of at least 3 attempts that died quickly, and only one that’s semi-sustained - but that one is deliberately narrow in focus, pulls a lot of their data from another site, and with no/limited verification of submissions sometimes publishes wrong information.
The problem is that “community managed” means nobody manages. Unless you have a dedicated core team working on this it becomes stale fast. Even then, community managers need to monitor changes to existing devices to ensure that they’re removed if they no longer work with HA (and yes, this happens with changes to APIs and firmware, or with changes in HA).
I like the idea behind that. Would be happy to add some of my devices as well.
However, as both @Tinkerer and @nickrout already stated, maintenance is key here. Since login via GitHub is mandatory to add devices, it would be still possible to “fake” entries. How would you make sure that the entries are valid? Some sort of moderation system comes to mind with the need of a moderation team that oversees this.
I could free up some time and help maintaining. Though the project already needs some documentation. I would not know what to add into the fields when creating a new “domain”. Brand is clear but what about the other two?
This might be another way to do it, sure. Althought it might give the impression of an official list from the team instead of a user experience based one, which in return can cause new users to spam the forum for unlisted devices.
I won’t say it will cause this but it is a possibility.
Would be nice to hear what the responsible team members for the documentation think about this. Not sure who it is though. Don’t want to ping someone unnecessarily.
It is indeed… What I meant is that it can lead to unexpected or unwanted behaviour when not correctly planned and discussed with the team. At least I think so. Maybe I am just overthinking things…
edit: Maybe this can be integrated into the already existing integrations documentation.
I think documentation is one of the the items on the checklist that developers have to complete before an integration/update is approved for release - not sure that anyone is “responsible” for it in the sense that they write and maintain it.
Going back to the OP’s idea…
The dummy webside looks looks great, but maintaining it would be a monumental task. There are currently 2,524 integrations listed on the docs integrations page.
Compatibility scores may be problematic. Given that there are now (I believe) several hundred thousand installations, the value of the scores is going to vary enormously - some integrations will be used by nearly everyone, others by hardly anyone (see analytics).
There is already a link to known issues from each integration page in the docs.
Web resources. Good point - although maintainance would again be an issue. Some of the YouTube guides are… er… misguided.
You can see from the number of links here that a lot already exists. I would say that the problem is not lack of information, but the difficulty in finding it, and I have no idea what to do about that - it may be the nature of the beast.
Can we have links to these? You can learn a lot from failures. I’ve only come across one - an attempt to index the documentation. This seems to be on the right track, in that it aims to help find existing material rather than adding to the pile of stuff. Whether it will be kept up to date remains to be seen.
Wherever possible links in the index are to pages, rather than anchors within pages. This means that changes to content are less likely to invalidate the link.
I run a broken link check periodically - currently once a month.
New features are the main issue - I have deliberately excluded pages in the docs relating to particular vendors or products. As @Stiltjack says, there is already an index to these. The website includes a request form - if I have missed anything (I’m sure I have) users can let me know.
Edit: Yes, I did experiment with ChatGPT. The results were impressive… but two years out of date