With the arrival of more than 200 integrations, the page is complicated to follow.
I was wondering if we couldn’t filter the integrations in another way? Currently, I am in France and I would like to avoid having services unavailable in my region. So maybe add a filter based on the location of the (or the) house?
And if I still want to see some of these integrations, it would be enough to disable the filter.
This is one example among others. But I think it will be necessary to have better clarity among this large number of integrations present and especially to come
In any case, I am happy to see these external integrations again as on the V3
I had the same thought, it would be great to be able to filter by country or region.
Because the modules for Canada/US won’t interest European countries and vice versa. And from a user experience perspective, it would be amazing to say « show Canadian modules » and be able to directly find Gladys’ value!
But filtering by country isn’t going to reduce the number that much (though, weather, transport, energy suppliers for each country, that’s already quite a lot…)!
Good ideas. And I would also find it clever, given the list of integrations, that those already installed are marked, as new ones already are.
Because even when you filter by category, it still displays a few dozen, and I would like to visually identify those I have already installed, and therefore by implication those I have not installed.
And I’ll take this opportunity to slip in another suggestion: when you open an integration and then go back, return to the same spot in the list, not all the way to the beginning.
I have a few additional suggestions regarding the search and sorting of integrations.
Add sorting by update date
It would be interesting to be able to sort integrations by the date of the last update. This would make it easier to identify those that are actively maintained and, conversely, to identify those that seem abandoned or have not evolved for a long time.
This does not necessarily mean that an old integration no longer works, but this information would be useful when choosing an integration to install.
Highlight the number of results better
The number of integrations corresponding to the selected filters is currently quite discreet. However, I find that this information could be highlighted more.
With the number of integrations available, it would be practical to immediately see how many results match your search, rather than having to count them or browse the list.
Allow combining multiple levels of filters
Given the number of integrations available — and by the way, hats off to you guys for the work done! — the filters on the side become less and less relevant when they do not allow refining the search sufficiently.
For example, the « Local Multimedia » category has 64 integrations. That’s already a lot to easily find the one that meets a specific need.
The ideal would be to be able to combine several filtering criteria, for example:
A category: Local Multimedia;
A sub-type or usage: music, video, media server, etc.;
Sorting by update date;
Possibly, a filter on recently updated integrations.
The goal would be to be able to progressively refine your search without having to browse through dozens of results.
With the growth of the catalog, I think a more advanced filtering system, combined with relevant sorting, would really become useful to facilitate the discovery of integrations and help users make their choice.
I will summarize all the requests. I will modify this message if other ideas emerge in the following exchanges…
Ability to filter by category: Heating, Lighting, Energy,… (ok, this is already in place)
Ability to filter by subcategories. For example, music, video, media server,… in the « Multimedia » category which already contains more than 90 integrations
Ability to filter by type: Native/Community and Cloud/Local (ok, this exists)
Ability to filter those that require Gladys Plus (already works) or those that do not require Gladys Plus (this is not possible today, and I don’t think it’s equivalent to choosing ‹ local ›+‹ cloud ›)
Ability to filter already installed integrations (ok, done) or not installed (not possible today)
Ability to filter integrations by their author (because if I liked one of their work on an integration, I want to know what else they have done; Well, it won’t filter much if we choose guim31 )
Ability to filter integrations by the country in which they are operational
Ability to filter integrations according to a status « Not yet tested / Partially tested / Tested and reliable » that the author would define and modify progressively (I know this status does not exist yet, but it would be a relevant sort given the number of extensions developed ‹ blindly ›)
Ability to filter by the minimum version of Gladys required (But I don’t know if it’s really useful, because I don’t see any reason not to update Gladys as we go along…)
Ability to filter integrations provided ‹ with a widget ›, ‹ with a scene trigger ›, ‹ with a scene action ›. This will be useful to identify those that can enrich your dashboard or your scenes.
Ability to sort integrations:
by creation date (this would replace the ‹ New › filter, whose duration we don’t know)
By last update date
By number of installations
And the interface should allow combining all these filters together: what are the integrations in the Energy category, developed by guim31, that I haven’t installed yet, that were released this week, that work locally, that have been partially or fully tested, and that work in France?
And other associated improvements:
When you open an integration and go back, return to the same filtering and to the same place in the list (and not at the very beginning)
Display more visibly the number of filtered integrations
I agree that it’s becoming quite difficult to keep track of things…
but also for managing (supervising) external integrations…
I tried (with Cursor) to create an external integration that displays, on a single page, all installed external integrations, with the same actions as their supervision screen: start, stop, restart, update, logs, and uninstall.
But I’m stuck on authorizing an integration to supervise the others…
For your information, @pierre-gilles has already reworked the integrations page: much lighter and faster catalog, display as you scroll, and no misleading counter during loading. This will be in the next version of Gladys:
For filtering, part of it is already possible today (category, Native/Community, Local/Cloud, Gladys Plus, “Installed” view, “Newest first” sort). The other ideas from this topic are noted, thanks @StephaneB for the summary!
Here is a complete comparison between the requests for this topic and the current state of the Gladys code (master branch), with an estimate of the development complexity for each point.
For information, the store currently has 729 integrations.
Already available
Request
Current state
Filter by category
Sidebar menu, 12 categories
Filter Native / Community
Filter at the top of the page
Filter Local / Cloud
Filter at the top of the page (both checked = « Local OR Cloud »)
Filter « Requires Gladys Plus »
Filter at the top of the page (only concerns native integrations)
Return to the same filtering after opening an integration
Filters are preserved in the URL and restored on return
Display the number of results
Yes, but discreet (« X out of Y integrations » in subtitle)
Partially available
Request
What’s missing
Complexity
Visually identify already installed integrations
The status badge only appears if the status is abnormal, or in the « Installed » view. A « Installed » badge is missing that is always visible
Low
Filter « installed » and a category
« Installed », « Favorites » and « Updates » are menu entries, not filters: they cannot be crossed with « Energy », for example
Low to medium
Return to the same place in the list
On return, the list starts from the top and the first 48 cards: the position is lost
Medium
Highlight the number of results
It exists but remains discreet. With an active filter, it displays « N integrations » instead of « N out of 729 »
Low
Duration of the « New » badge
Fixed at 30 days, without explanation
Low (a tooltip)
Not yet available
Request
Analysis
Complexity
Add a Transport category
Absent from the 12 current categories. It needs to be added to the vocabulary, translations, and automatic classification of the store
Low
Filter integrations without Gladys Plus
It’s the opposite of the current filter
Low
Filter integrations not installed
It’s the opposite of the « Installed » view
Low
Filter by minimum version of Gladys
Gladys already knows if each integration is compatible with the installed version, but only the installation page uses this. A « compatible only » filter would be simple; a real filter by version seems of little use
Low (« compatible only »)
Sort by update date
The date of the last change on GitHub is already available, but not used. It’s not exactly the date of the last published version, and native integrations don’t have a date
Low (GitHub date) / Medium (real version date)
Filter by author
The author can be easily deduced from the GitHub repository. The difficulty is the interface: a list of hundreds of authors, or a clickable author on the card (it’s not displayed today)
Medium
Filter integrations « with widget », « with scene trigger », « with scene action »
The information exists in the complete description of the integrations, but not in the lightweight version of the catalog. It needs to be added there, then create the filters
Medium
Filter by sub-category (music, video, multimedia server…)
A new vocabulary needs to be defined, added to the manifests and the store, then manage nested filters. Above all, all existing integrations need to be classified (92 just in Multimedia)
High (little code, a lot of classification)
Filter by country
This information does not exist today. The field needs to be created (with a « worldwide » value), added to the store, fill in the 729 existing integrations and propose a default filter according to the location of the house
High (it’s the missing data)
Test status (not yet tested / partially tested / tested and stabilized)
New field that the author would fill in. The question is mainly whether we can rely on a status declared by the author
Medium (in code), but it’s mainly a question of store rules
Sort by number of installations
No data available: instances would need to report their installations to the store. The number of GitHub stars is, however, available and could serve as an indicator of popularity
High (real installations) / Low (GitHub stars)
Supervise all installed integrations on a single page (proposal from @b3n.0)
Out of the scope of this topic, to be treated in the core of Gladys. The « Installed » view already displays the statuses, but without the actions (start, stop, update…)
Medium
Quick tracks
The simplest developments, which do not require any new data: an « Installed » badge on the cards, the « not installed » and « without Gladys Plus » filters, sorting by update date, a more visible number of results and the Transport category. Then would come the return to the same place in the list and the filter by author.
Hello everyone, and thank you for this topic and for all your ideas!
Seeing the catalog exceed 750 integrations is a nice problem to have, and it’s thanks to you. Thanks also to @StephaneB for the summary.
As @cicoub13 said, the next version of Gladys will already make the integrations page much faster and more pleasant to browse. So we’re off to a good start!
For the future, I’d like to share the philosophy that guides Gladys: less is more.
Every option added to the interface has a cost, even if it’s not immediately visible. It’s one more thing to read and understand, and one more choice to make before finding what you’re looking for: the more choices there are, the longer it takes to decide. Everyone pays this cost, including those who never use the option.
Steve Jobs summed it up like this: focusing means knowing how to say no to hundreds of other good ideas. And that’s exactly the case here: your ideas are good, but we have to choose the ones that bring the most.
Concretely, a filter deserves its place when it answers a question we really ask ourselves when looking for an integration, and when it significantly reduces the number of results.
It’s with these two questions in mind that I’ve reviewed your proposals.
What seems really useful to me
Filter by country: clearly yes! As @spenceur and @lmilcent pointed out, regional specifics are numerous (weather, transportation, energy providers…).
Better-defined categories: we need to add the missing ones (Transportation, well spotted @mutmut) and split those that are overflowing. I prefer to keep a short and flat list rather than nested subcategories: if the list of categories becomes complicated itself, we’ll have only moved the problem.
More powerful search: to me, this is the best filter, because most of the time we already know what we’re looking for (a brand, a device, a service). Today, it only looks at the name and description. If it also found the author or brands, it would answer many of your requests without adding a single button.
An “Installed” badge on the cards: to spot at a glance what you already have, as proposed by @StephaneB.
Sort by update date: just one more option in the existing sort menu, very practical to see if an integration is maintained (thanks @Prof_Techno).
Return to the same place in the list after opening an integration (thanks @NineStars), and display the number of results more clearly (thanks @Prof_Techno): these aren’t filters, but small improvements that make a difference in daily use.
Where I’m more reserved
Without Gladys Plus: only a handful of integrations require Gladys Plus (6 out of 765). This filter would show 759 integrations instead of 765, which wouldn’t make a big difference.
Not installed: even with 50 installed integrations, 715 would still be on screen. The “Installed” badge better meets this need.
By author: In the era of AI, the author is mainly Claude, I struggle to see the interest of such a filter.
Minimum version of Gladys: I recommend everyone to use the latest version of Gladys, and almost all instances are already running on it. Gladys actually checks compatibility when installing an integration. And if you haven’t enabled automatic updates yet, now is the time
“Tested / Not tested” status: I’m not in favor. A status declared by the author doesn’t guarantee much. Above all, it would devalue all the work done with the help of AI in recent months: an integration that hasn’t been tested yet can work perfectly from the first try!
Number of installations: why not in a few months or years. But today, most recent integrations would show “0”, which wouldn’t do justice to the effort made recently. And since we want to encourage new users to join the adventure, displaying a counter at zero would be a bad signal.
An idea for later
The best filter is the one you don’t need to adjust! Gladys can already see the devices that announce themselves on the local network. Gladys could directly suggest the integrations that match your hardware!
Thank you again for all these ideas, keep sharing them: that’s how Gladys moves forward!
Actually, even if AI does a lot, it is supervised by an author who decides how much they want to refine the development, test it themselves after what the AI has done… As a user of integrations, I have already noticed differences at this level, and therefore it would be rewarding for an author who has created a quality integration to be able to see these other creations (even if it’s partly created by an AI).
But not necessarily an additional filter, it could be a button ‹ see other integrations by this author › when you are on the supervision page of an integration.
In this case, it’s also the same approach used in the Apple App Store when you click on the name of an app’s developer.
This is exactly what HA does when you start with it!
I was even surprised by the precision and speed of the discovery system
And I think it’s great: you arrive at Gladys’s integrations, a welcome message with « Here are the possible integrations related to the discovery of your hardware! Click to install. »