Raise the entry bar/hurdle for UI integrations

I understand that to be more user-friendly, more and more integrations shall not require YAML code in the config but should be configurable from the UI. Each month that happens for several integrations, which are then automatically migrated into the integration section.

So far, so good, but unfortunately this user experience is then much worse than before, because of being totally counter-intuitive, inconsistent and different for each integration.

While YAML might be too technical for some, it is at least straight-forward: The documentation provides all available parameters, you put them in as required, done.

When taking the Android TV and Nokia HERE integration as two examples that I use and that lately moved to the UI:

  • Parameters are spread amongst different screens or not visible/reachable at all. Where is e.g. the API key stored that the HERE integration requires?

  • Services / entities can obviously sometimes not be edited, but would have to be deleted and recreated even though I just want to CHANGE something (which was easily possible in YAML).

  • Created entries (Android TV) appear as radio buttons (same appearance as the radio buttons that offer general options), which then need to be selected to find their individual settings. If there are more than x entries, then radio buttons are suddenly converted to a drop-down list

  • Here I am supposed to either select something in the first drop-down OR something in the second drop-down, “Submit” then means that I would like to edit this entry. What happens if I select something in the first AND second drop-down?

  • Mixture of translated and non-translated text. When I click on the question mark, the documentation does not provide definitions of the options that are being presented to me:

  • There is no way to see several instances of the same integration on one screen, where in YAML you had it all below each other. So when you want to compare why one behaves different than the other, or create a new one based on another one, this is endless clicks and/or several open windows

Don’t get me wrong, I am not a YAML fan by itself and do like good UIs. But with the current inconsistency between different integrations and often not being intuitive at all, while not even having the alternative to still use YAML instead, I think UI integrations are often released too early and then a step backwards.

I think it needs more strict guidelines about what and how an integration needs to provide in the UI. Deleting and recreating an integration because that is the only way to still reach/change some parameters should be simply a no-go, as one example.

Alternatively keep YAML as the underlying basis. In dashboards I am also free to use the UI, but also edit the YAML directly. For integrations you cut off the YAML option, while forcing the usage of a UI that is not really usable.