After successfully getting my kids to install the Home Assistant app, there was one glaring problem. Dashboards are sorted alphabetically!

Shocked

TL;DR Github link

This has been a problem with Home Assistant for me, as I love to have 2 separate accounts, one admin and one normal user account. This way I can keep some stuff separated. Except, logging in and out resets your dashboard order every time! I like my dashboards sorted a certain way and this hack does it using a card.

After installing this card, there are 2 modes this card provides, which are:

  • “Show me my current order and display a configuration”-mode
  • “Always make sure that this is my order”-mode

Show me my current order and display a configuration-mode

This mode grabs your current configuration from the local storage and displays a configuration for this card, based on your current dashboard ordering/visibility.

Make sure you add this card to your default dashboard configuration (or even ALL of them, but e.g. using the decluttering card).

- type: custom:sidebar-order-card
  initial: true

The above configuration will display the card, with your current sidebar order. It will probably look something like this.

- type: custom:sidebar-order-card
  initial: false
  items:
    - home-dashboard
    - woonkamer-dashboard
    - energy
    - history
  hiddenItems:
    - developer-tools
    - logbook

“Always make sure that this is my order”-mode

Copy the configuration that is displayed by your dashboard and replace the previous one. This will make the card invisible, but every time the dashboard loads, the configuration in the local storage will be overwritten en your menu will have the predefined order.

Remarks

  • New dashboards will always be visible if they are not in your configuration. I think they will be added to the end of the menu.
  • Reordering your menu and not storing that configuration in your card configuration, will end up removing your new order.
  • This is probably not the greatest solution for this, as this would probably be a per-user server-side configuration, but until then, this works.

Grab the card here!