Manage sidebar/menu items (hide/add/move)

I would love to be able to manage the sidebar. E.g., re-order it, hide/remove/add items from it. (e.g., I don’t use history or map).

Those additional items annoy me personally.

Ultimately, configure items to show for each person (or define separate menus on a person level even).

This has been a long-requested feature. I like the idea but I do think we need to have some way to define a menu and then an admin has the ability to select which menu a user should see. Or maybe just a UI where they can choose the order and which menu items to see.

I see the problem where you have 5 people in the house. I don’t want to login to each account and edit their menu for them. I should be able to edit all menus for all users in one spot

12 Likes

IMO that should be done on the users page (/config/users) you can add/remove a checkbox for entries you want to show/hide for that user.

Maybe a multi select dropdown :man_shrugging:

8 Likes

But also with the drag and drop abilities

5 Likes

Vote clicked! Funny, I was looking for this feature this morning as my list start to grow and required scrolling.

Obviously this is not a permanent solution, but this does currently exist in a custom capacity.


I would love to retire this plugin in the future if it gets implemented into core.
5 Likes

Agree on this.

Also would love to see those sidebar pages, available in the top menu. The calendar is the only thing from the sidebar that I perhaps WOULD use on a daily basis, but now I never use, because it 2 clicks away. It’s faster to start my agenda app on my phone.

related fr: https://github.com/home-assistant/frontend/issues/5785

A proper user access control system with the ability to define roles that has items that can be accessed or not, but not limited to side panel items All items should be controllable. these can then be assigned to users

It seems funny to have someone as knowledgable dev as @frenck saying WTF WTH about something like this. I would have expected a PR or a blog post :slight_smile:

Come on frenck, just code it!

LOL, Yeah it seems like that at times. But simply cannot do everything I have in my head :wink:
Besides, this hits some frontend stuff, which is beyond my comfort zone

8 Likes

Yeah I know that’s not your area :slight_smile:

I’m new to this menu “customization” (even if I actually use HA for years) but is there any way to make it way more useful for users that do not use the Supervisor ir the Hass.io install ?

Trying to include this… but have a little trouble.

I have in installed via HACS.

Then it says:

And specifically this:

frontend:
  extra_module_url:
    - /hacsfiles/custom-sidebar/custom-sidebar.js

Where do I place hat code? If I go to lovelace raw confg it says:
image

Go to [your IP or domain]/config/lovelace/resources or navigate there by going to “Configuration” → “Lovelace Dashboards” then click the “Resources” tab at the top of the page. From there you can add resources.

Thank you, that’s easy (and admitted had done before but forgot).

One last question… I want the admin to see all sidebar items and some users hide some… how can I do that?

Where do I place hat code?

you will need to add it to the frontend configuration in configuration.yaml

It says where to put the code in the readme :wink: The readme also has the information you need to build exceptions per user. Currently there is no option to differentiate between admin/non-admin in exceptions, though I could add it if I got a request for it

I am now confused. I followed:

And it is in now like:

But you say I need to get it out of there and put in in configuration.yaml correct?

first this and then expections (after playing around with that :-))

You don’t need to remove it from your Lovelace resources, but using it only as a Lovelace resource limits its use. If you load into any page other than a Lovelace dashboard (ie configuration or dev tools), your sidebar will not be altered. Adding it as an extra frontend module ensures that it loads all the time.

Sorry :man_shrugging: abacadabra

Is it best to do both then? in lovelace resources and in yaml?