Separate dashboard structure and content

I tried for a feature request in the Github discussions, but there either doesn’t seem to be too much traffic over there, or maybe I am looking for something totally stupid. So here’s my wish…what do y’all think?

After playing a while generating the perfect dashboard for me (which quickly gets too addictive :slight_smile:), I really miss a separation of content (cards definition) and structure (dashboard layout).

  • Card configurations should be defined within an extra pool, from where they can be referenced and also re-used in multiple places.
  • Dashboards should be setup by defining the desired structure and referencing to existing cards from the pool to fill the grid places with content.

Especially with more complex layouts, mixing of actual content (i.e. card definitions) and structure information becomes quickly messy and almost impossible to maintain. Restructuring means major re-indenting, which is error-prone and tedious. Re-using of content in different dashboards (e.g. for different users) means copy/paste, changes have to be applied in multiple places. Complex layouts become a brain-twister to keep an overview about structure and content definitions.

With simple card references within the structure information, dashboards become easy to maintain, even complex layouts remain lightweight and clear, tooling can be implemented more simple. Cards can be re-used in multiple places with a single source definition for easy maintenance. It’s natural to either focus on structure or on content – at different times.

Beyond that, dashboards should not only be conditional to users, but also to screen size or other information. Most easy: a set of conditions (incl. templating) like e.g. for automations would be attached to the dashboard visibility. That way you can come up with the best dashboard for your wall mounted large screen, your large and small tablets and phone…etc.!

For backward compatibility (and quick shots ), the existing structure def. doesn’t need to be changed. You would just refer to a pool card (“card_ref: myNetworkSpeedChart”) instead of inserting the complete card definition content.

1 Like

What you are requesting is absolutely sensible, but in my limited time with this product I’m not surprised at the lack of response.

As a relative newcomer and outsider I cannot understand how so many people must spend so much time reinventing the wheel with this product.

How is it possible to have got this far on what is essentially a visual interface for automation devices and services without defining what some of the basic design requirements should be?

Some really clever people here, doing really clever stuff. But much of the overall vision is one of chaos to an untrained eye.

Like you, I have spent far too long crafting dashboard layouts so that HA is accessiblle for other users in my home. I am now in the position where I need exactly what you’re requesting, otherwise I’m about to spend 2021 re-inventing the wheel day in/day out. The expression "It’s important to do things right, but it’s more important to do the right things" springs to mind.

It gets 1000 votes from me, but it’s up to the guys who do the hard stuff I guess.

I must say I’m getting close to abandoning HA and just paying money for something commercial. Tinkering is fun, but bashing my head against a brick wall is starting to wear thin :slight_smile: