So, today we have the blueprint exchange topic, which works but clicking through topics, searching through the many versions posted as they’re iterated over, and copy pasting them into my own instance is a terribly cumbersome way to interact with other people’s blueprints.
Take as a comparison Tasker, Automate, or IFTTT, or any other community-driven automations system. They each have a dedicated place/system where users can publish “blueprints”, search them, import them, and improve upon them personally, all directly accessible from within the app.
Imagine if, as HA moves to a more user friendly world, the blueprint exchange had a click button service for searching, importing and up-voting various blueprints! It still plays nicely with the advanced blueprint exchange topics where they can be commented on and iterate on them and collaborate improvements, but the workflow to find, import and use them would be WAY better! If integrated into HA directly, you could search/filter for blueprints supporting devices you already own, click-button, and voila, instant automation!
I voted, but here are some search tips while you wait to see if such a thing can happen.
I’m sure if this does happen it will be a community effort rather than a core thing.
Normally I’d say the same, but the existence of Nabu Casa and the Open Home Foundation is proof that there’s an interest in building components that bring together the entire system under one roof when it makes sense, even if they could have been served by and independent developer (like the cloud connectivity, Alexa skill, voice assistant system and ESPHome.) I imagine this fills a similarly very useful niche without wanting to depend on a random 3rd party developer/HACS installation for the functionality.
They built the blueprint exchange, clumsy but functional. Generally that means it’s the community’s turn to ‘make it better’.
They have more baser things on their plate. Voice, AI, ZWave, ZHA, drag & Drop, energy, and other things that are incomplete but more needed that a pretty search tool frontend for Blueprints.
There was even some work done to add blueprints to HACS, which would have been an improvement, but that was stopped for reasons… “That’s not the direction we were planning on going”… was the rumor.
I’m not holding my breath, but there was talk of Template Blueprints or other Blueprints at the state of the open home event, so who knows.
What I’m saying it this is not going to get a major change like that going. Architecture discussion followed by someone in the community with the chops and the desire to pull this off and write it.
Did you realize there are hundreds of Core code owners that are community members, but less than a dozen Nabu-Casa employees that are code owners.
Perhaps that’s the case! But then, gathering community input to help inform prioritization of the HA and Nabu Casa roadmaps is the whole idea of the voting feature request community section. And indeed! There are many community members developing and adding to core (as well as HACS) every day, many of whom also see and read the feature request posts as a place to discuss ideas and opportunities. And as you say, there have been hints at additions to the blueprint system upcoming, and I don’t see a duplicate request or closed discussion topic in the community posts, hence the feature request for exactly that discussion.
In my particular case I’m thinking less a pretty search for the existing community pages, which I think would be hacky and flakey at best, and more a format for publishing blueprints in an indexable manner instead of as just plain unindexed yaml, even if it still relies on adding GitHub repos like the addon store, allowing the community to do the legwork of collecting and publishing the blueprints.
In fact the Add-On store might be an ideal starting point as a concept for a blueprint installation portal.
Votes only makes a request more visible, but a dev also needs to want to work on it and the entire team need to see the direction it takes as a good one.
This is not an user-guided project. Open source projects rarely are.
This is a dev-guided project and the users are just tagging along for the ride.
Look I support this. Don’t get me wrong. I have seen how things like this happen, however, and not often it is pushed by Devs that are NC employees, but rather usually be Devs that are community members or even community members that want to do some dev work on a project they are passionate about.
Come up with a valid plan, and an outline, start an architecture discussion, get buy-in and direction from the project leads, and write it up, get in merged. That’s how this could happen.
If you are expecting a NC employee Dev to pick this up, you will be waiting a while. It is Opensource. I’m sure RBAC and the polishing of Project Grace, and Border router for Skyconnect or whatever it’s called now, and other more popular projects that are on the NC Devs plates are going to happen first.
Yep! As I said, “to help inform prioritization”, I never suggested otherwise or that I had a demand for someone to act on it. The reason I posted it is precisely as you suggest: to find others who might have an interest in the area, to gauge whether it’s something I myself would be interested in developing, and to flesh out what a most useful format for the feature would be.
With that in mind, do you have thoughts about the merits of a blueprint “store” or what such a feature user experience would best look like? That’s generally the type of conversation I’d like to foster.
Understandable. I was using NC as an example because there’s been a visible push from NC to make HA more user friendly for non-developers to use the project, and this idea falls in that vein, which is why I mentioned they might have an interest. I’m not looking for or expecting NC employees to be on the hook for it, nor do I think they owe me anything personally; just putting out the feature request to gather votes from people who want it too, collect ideas, and be a rally point for prospective developers (NC or community) to discuss the idea, possible implementations, merits of why it should or shouldn’t exist, like every other post in feature requests. It’s not NC feature request, it’s an HA feature request.
As you say, the way to get a feature merged is to develop a plan, get buy in, and build interest. All of which I intended this thread to be focused on. Very happy to hear your thoughts/brainstorming on the merits or potential implementations for a blueprint library though!
Not thinking out of the box at this point, going against existing models.
The add-on model currently requires you to somehow find the thing on github or in a post somewhere, then add the store, then download it. At least now we have a list, so that is backwards.
The HACS model allows the author to add it to a list after creating a github for the software. There are specific things to add and have working. It makes it much harder to share something than the current exchange, but you can get your item listed in front of others. I have several custom_templates shared this way now.
Both of these have drawbacks.
Something different, I don’t have anything in mind.
No pre-experimental, as in a different branch being dev-ed.
He showed me a link to it, so it was partially written.
I think the Architecture group didn’t like it. No idea, other than it seemed to stop at that point. That was about 2 months ago.
I was only involved because I floated the idea past him I think in a chat a couple of times, because I thought it could work well.
I’d be curious to find out more about what the HA change was that is referenced and how it makes Blueprints in HACS no longer make sense. Will do some more reading in the morning and look for more breadcrumbs
Perfect.
The first part of a project is analysing and designing and that does really not require any experience in coding.
Gather what data is available for the data you want to sort.
Try to organize the data, so it can be used for your purpose, like what to sort on and how to handle the streamlining of that.
Streamlining is the hard part, because you can make your project, but if one calls it a piece of code for " wireless protocol patch" and another calls it “remote connection update” then it might be the same, but you have nothing in common in the two descriptions and if your project should make it better than today with free text searches, then that hurdle have to be overcome.