Lovelace and/or Legacy UI: Show or hide cards (or views or groups) on a per-user basis

Here’s the use case I’m trying to cover: I’d like a simplified HA dashboard for the family, and a different one for ‘admin’.

My current dashboard (legacy UI) has a bunch of groups / tiles / tabs that are relevant to me as admin / technical user but not the rest of the family - e.g. a Last Seen sensor panel, or the RPi system stats, etc.

Now that HA supports the concept of different users , I am looking for a way to customize the UI on a per-user basis.

Ideally, by creating a dashboard for each ‘user class’, but per-user (without user classes) would do as well: e.g. in lovelace hide this view/card by default except for user ‘admin’ etc.

Forum discussion: Show or hide cards (or views or groups) on a per-user basis

This would be a very nice feature to have!

2 Likes

Hi, I’m also looking for this capability for the same usecase, i.e. one View that is seen by the ‘Admin’ user but hidden for ‘regular’ users. I’m using the legacy hassbian UI.

Thanks!

2 Likes

Indeed!
I’m waiting for this feature too.

2 Likes

Also I need to hide/show view/card depending on the results of condition like if the temperature of coal stove is above 40C then hide the switch for electric boiler (which is useless in such situation) and so on.

There is already a conditional card, you just need to create a template sensor that creates a state of show/hide and use it accordingly to show/hide your card: https://www.home-assistant.io/lovelace/conditional/

Also wanting to reduce clutter with this.

A simple first pass would be a “show_in_header: false” option for a view, meaning the view can only be accessed by navigating to it’s path directly. That would sort my issues and I assume would be really easy to add?

Then I know some of you want more such as dynamically show/hide from a service and maybe a “show_for_users: [names]” or “hide_for_users” or similar would be good to start having some user-based views.

That would all be nice too, but as a first step can we just add the hidden attrib…?

T

With the migration to Lovelace this week I run into this partial solution:

…Which allows restricting specific views to specific users, so you can have a set of views for Admins and a set of views for family members etc.

The general downside of this approach is that you have to accept the other customizations that this custom ‘card’ (it’s not really a card) does. It also mixes per-user views with per-user-agent configurations in a bit of a limiting way, and you need to repeat a lot of UI configuration if the only thing you want to do is remove single card from a view depending on the user.

It’s not meant to do exactly what is asked here, but it gets close.

I adopted and it does the job, today. Whenever we get per-card/per-user visibility control then I will be able to remove all the extra configuration that I had to add to fit my use case into what compact-custom-header offers today.

Did this discussion die? I’m looking for the same thing - to be able to display/hide cards per user - not views (CCH). If I only want to hide one card, using CCH will make me set up the same view twice - one with the card, one without it. That’s a lot of extra config to keep track of just to be able to hide one card.

1 Like

In my case, I have too many tabs and cards, and I need users only see an especific list of them. Why not add permissions by group for example?

+1
My wife does not need (nor wants) to see the same cards as I do. All she wants is a simplified dashboard with simplified cards, whereas I want the full fledged stuff.

I would make sense, as user management is there, to design lovelace dashboards on a per user basis as well.

1 Like

+1

Been looking for a way to do this

This now (since 0.101.0) can be achieved using the visible option in a Lovelace view.

There is a custom conditional card that handles this on card level too! 🔹 state-switch - conditional card on steroids

1 Like