diff --git a/options/view-options/index.html b/options/view-options/index.html index b3ffd14..3021208 100644 --- a/options/view-options/index.html +++ b/options/view-options/index.html @@ -1147,6 +1147,7 @@ Each configuration is identified by a view name and can have the following optio

Extra Views#

The extra_views group enables you to specify the configuration of additional views. Each view can have the options as described in the Home Assistant documentation.

+

Extra views are sorted by order first and then by title, together with the build-in views.

Tip

You can build your view in a temporary dashboard and copy the views group from the YAML of that dashboard into @@ -1160,6 +1161,7 @@ group extra_views of the strategy configuration. The YAML can be fo - theme: Backend-selected title: cool view path: cool-view + order: Infinity icon: mdi:emoticon-cool badges: [] cards: diff --git a/search/search_index.json b/search/search_index.json index 6714aad..d4ab74e 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the Mushroom Strategy Documentation","text":"

The Mushroom Strategy is an innovative solution for Home Assistant that empowers you to effortlessly create beautiful, intuitive, and automatically generated dashboards using the popular Mushroom cards.

Say goodbye to tedious manual YAML configuration for every card! With the Mushroom Strategy, you can define your entities, areas, and devices and let the strategy intelligently build a dynamic and responsive dashboard tailored to your smart home.

"},{"location":"#key-features-benefits","title":"\u2728 Key Features & Benefits","text":""},{"location":"#get-started-in-minutes","title":"\ud83d\ude80 Get Started in Minutes","text":"

Ready to transform your Home Assistant interface? Follow these guides to get your Mushroom Strategy dashboard up and running:

We're excited for you to experience the simplicity and power of the Mushroom Strategy. If you have questions, encounter issues, or want to contribute, please visit our GitHub repository and engage with the community!

Enjoying the Mushroom Strategy? Consider giving our project a star on GitHub and exploring ways to sponsor the project to support its continued development! Your support helps us grow and improve.

"},{"location":"#sneak-peak","title":"\ud83d\udc40 Sneak Peak","text":"Click here for more images..."},{"location":"faq/","title":"Frequently Asked Questions","text":"How do I add a device or entity to an area?

You can add devices to an area by going to Settings found at the bottom of the sidebar.

  1. Select Devices & services.
  2. Select Devices or Entitiesat the top.
  3. Choose the device or entity you wish to add to an area.
  4. Select or in the top right corner.
  5. Choose an area in the area field.

Warning

If you created an entity manually (in your configuration.yaml), you may need to create a unique_id before you can set an area to it. See Home Assistant's documentation for more info about unique ids.

How do I hide entities from the Strategy?

When creating this dashboard for the first time, you might be overwhelmed by the number of entities. To reduce the number of entities shown, you can hide these entities by following the steps below:

  1. Click and hold the entity.
  2. Click in the top right corner of the popup.
  3. Set Visible to off.

Note

If you don't want to hide the entity from all dashboards, you can use Card Options to hide specific entities and devices.

How do I get the id of entities, devices and areas? "},{"location":"full-example/","title":"\ud83d\udcdd Full example using all the options provided with the strategy","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    views:\n      light:\n        order: 1\n        title: illumination\n      switches:\n        hidden: true\n        icon: mdi:toggle-switch\n    home_view:\n      hidden:\n        - areasTitle\n        - greeting\n      stack_count:\n        areas: [2, 1]\n        persons: 3\n    domains:\n      _:\n        hide_config_entities: true\n        stack_count: 1\n      light:\n        order: 1\n        stack_count: 2\n        title: \"My cool lights\"\n    chips:\n      weather_entity: weather.forecast_home\n      climate_count: false\n      cover_count: false\n      extra_chips:\n        - type: conditional\n          conditions:\n            - entity: lock.front_door\n              state: unlocked\n          chip:\n            type: entity\n            entity: lock.front_door\n            icon_color: red\n            content_info: none\n            icon: ''\n            use_entity_picture: false\n            tap_action:\n              action: toggle\n        - type: conditional\n          conditions:\n            - entity: cover.garage_door\n              state_not: closed\n          chip:\n            type: entity\n            entity: cover.garage_door\n            icon_color: red\n            content_info: none\n            tap_action:\n              action: toggle\n    areas:\n      _:\n        type: default\n      family_room_id:\n        name: Family Room\n        icon: mdi:television\n        icon_color: green\n        extra_cards:\n          - type: custom:mushroom-chips-card\n            chips:\n              - type: entity\n                entity: sensor.family_room_temperature\n                icon: mdi:thermometer\n                icon_color: pink\n            alignment: center\n      kitchen_id:\n        name: Kitchen\n        icon: mdi:silverware-fork-knife\n        icon_color: red\n        order: 1\n      master_bedroom_id:\n        name: Master Bedroom\n        icon: mdi:bed-king\n        icon_color: blue\n      kids_bedroom_id:\n        name: Kids Bedroom\n        icon: mdi:flower-tulip\n        icon_color: green\n    card_options:\n      fan.master_bedroom_fan:\n        type: custom:mushroom-fan-card\n      remote.harmony_hub_wk:\n        hidden: true\n    quick_access_cards:\n      - type: custom:mushroom-cover-card\n        entity: cover.garage_door\n        show_buttons_control: true\n      - type: horizontal-stack\n        cards:\n          - type: custom:mushroom-lock-card\n            entity: lock.front_door\n          - type: custom:mushroom-entity-card\n            entity: sensor.front_door_lock_battery\n            name: Battery\n    extra_cards:\n      - type: custom:xiaomi-vacuum-map-card\n        map_source:\n          camera: camera.xiaomi_cloud_map_extractor\n        calibration_source:\n          camera: true\n        entity: vacuum.robot_vacuum\n        vacuum_platform: default\n    extra_views:\n      - theme: Backend-selected\n        title: Cool view\n        path: cool-view\n        icon: mdi:emoticon-cool\n        badges: []\n        cards:\n          - type: markdown\n            content: I am cool\n
"},{"location":"contributing/","title":"\ud83e\udd1d Contributing to Mushroom Strategy","text":"

We love contributions from the community! Whether you're reporting a bug, suggesting a new feature, or submitting code changes, your help makes the Mushroom Strategy better for everyone.

Please take a moment to review this guide before making a contribution.

"},{"location":"contributing/#code-of-conduct","title":"\ud83d\udcdc Code of Conduct","text":"

To ensure a welcoming and inclusive environment, all contributors are expected to adhere to our Code of Conduct. Please read it carefully.

"},{"location":"contributing/#reporting-bugs","title":"\ud83d\udc1e Reporting Bugs","text":"

Found a bug? That's not ideal, but your report helps us squash it!

  1. Check existing issues: Before opening a new issue, please search our GitHub Issues or Discussions to see if the bug has already been reported.
  2. Open a new issue: If it's a new bug, please open a new issue.
  3. Provide details: In your report, please follow the instructions and template to include:

  4. A clear and concise description of the bug.

  5. Steps to reproduce the behavior.
  6. Expected behavior.
  7. Screenshots or animated GIFs (if applicable).
  8. Your Home Assistant version and Mushroom Strategy version.
"},{"location":"contributing/#suggesting-features","title":"\u2728 Suggesting Features","text":"

Have a great idea for a new feature or enhancement? We'd love to hear it!

  1. Check existing suggestions: Search our GitHub Issues or Discussions to see if the feature has already been requested.
  2. Open a new issue: If it's a new idea, open a new issue.
  3. Describe your idea: Clearly explain the feature, why you think it's useful, and any potential use cases by following the instructions and template.
"},{"location":"contributing/#get-support","title":"\ud83d\ude4f Get Support","text":"

If you have questions about contributing or need help with your setup, please open a discussion on our GitHub repository.

"},{"location":"contributing/code/","title":"\ud83d\udcbb Contributing Code","text":"

Want to get your hands dirty with the code? Awesome! We appreciate all code contributions.

  1. Follow the Workflow:

  2. Make Your Changes: Implement your bug fix or new feature.

  3. Test Your Changes: Thoroughly test your changes to ensure they work as expected and don't introduce new issues.

    • You can build the strategy with npm run build (for production) or npm run build-dev (for development/testing).
    • Copy the built files to your Home Assistant's www/community/mushroom-strategy directory for testing. Remember to clear the cache of your Home Assistant client to see the changes.

    Info

    If your www/community/mushroom-strategy directory contains a file called mushroom-strategy.js.gz, rename or delete it.

  4. Format and Lint Your Changes:

    • Run the formatter with npm run ts:format.
    • Build the strategy with npm run build.

    Both of these tasks should result without errors.

  5. Commit Your Changes.

  6. Push to Your Fork.

  7. Open a Pull Request (PR).

Thank you for taking the time to help us improve our project! Your contributions make a real difference. \ud83c\udf89

"},{"location":"contributing/documentation/","title":"\ud83d\udcc4 Contributing to the Documentation","text":"

Good documentation is crucial for our project's success! We truly appreciate any contributions, whether it's fixing a typo, clarifying a section, adding more examples, or even extending existing topics. This guide will walk you through the process of contributing.

The entire documentation lives in the docs/ folder of this repository.

  1. Follow the Workflow:

  2. Serve the Documentation Locally: Start the local development server. This task needs to be run from the project root (where the mkdocs.yml file is):

    mkdocs serve\n

    This will usually launch a local server, at http://127.0.0.1:8000. The server will automatically reload in your browser as you make and save changes to the documentation files. To stop the server, press Ctrl + C in the terminal.

  3. Edit Markdown Files: All documentation content is written in Markdown (.md files). You can find them within the docs/ folder.

    • For advanced formatting options, refer to the Material for MkDocs reference.
  4. Add New Pages:

    • Create a new .md file in the most appropriate directory within docs/.

    Important

    You'll need to add the new page to the navigation (nav) section of the mkdocs.yml file for it to appear in the sidebar. Follow the existing structure.

  5. Add Images:

    • Place any image files into the docs/images/ directory.
    • Reference them in your Markdown using the syntax: ![Alt text for accessibility](images/your-image-name.png)
  6. Preview Changes: As you save your .md files, the local server running at http://127.0.0.1:8000 will automatically refresh, allowing you to see your changes instantly.

  7. Format and Lint Your Changes:

    • Build the linter with npm run md:lint-fix.

    This task should result without errors.

  8. Commit Your Changes.

  9. Push to Your Fork.

  10. Open a Pull Request (PR).

"},{"location":"contributing/documentation/#documentation-style-and-quality","title":"Documentation Style and Quality","text":"

To maintain consistency and quality:

Thank you for taking the time to help us improve our documentation! Your contributions make a real difference. \ud83c\udf89

"},{"location":"contributing/getting-started/","title":"\ud83d\ude80 Getting Started","text":""},{"location":"contributing/getting-started/#prerequisites","title":"\u2699\ufe0f Prerequisites","text":"

Before you begin, make sure you have the following installed on your system:

For contributing to the documentation, the following prerequisites are also required:

"},{"location":"contributing/getting-started/#local-environment","title":"\ud83d\udee0\ufe0f Local Environment","text":"

To make and preview your changes, you'll need to set up a development environment locally:

  1. Fork the Repository: Go to our main repository on GitHub and click the \"Fork\" button. This creates a copy of the repository under your GitHub account.

  2. Clone Your Fork: On your local machine, clone your forked repository using Git.

  3. Install Node.js Dependencies: Navigate to the root of the cloned project (where package.json is located) and install its dependencies:

    npm install\n
  4. Install Python Documentation Tools: Navigate to the root of the cloned project (where mkdocs.yml is located) and install MkDocs along with the necessary themes and plugins:

    pip install mkdocs mkdocs-material mkdocs-material-extensions\n
"},{"location":"contributing/translations/","title":"\ud83c\udf10 Translations","text":"

Help us make Mushroom Strategy accessible to more users around the world by contributing and improving translations!

Language tags have to follow BCP 47. A list of most language tags can be found here: IANA subtag registry. Examples: fr, fr-CA, zh-Hans.

  1. Check for Existing Translations: See if your language is already being worked on or exists.
  2. Locate Translation Files: Language files are found within the src/translations directory. Each language has its own locale.json file (e.g., en.json, nl.json, pt-BR.json).
  3. Create or Update:

    • To create a new language: Copy an existing .json file (e.g., en.json), rename it to your language code (e.g., de.json for German), and translate the property values.
    • To update an existing language: Open the .json file for your language and update any missing or outdated translations.
  4. Test Your Changes: Thoroughly test your changes to ensure they work as expected and don't introduce new issues.

    • You can build the strategy with npm run build (for production) or npm run build-dev (for development/testing).
    • Copy the built files to your Home Assistant's www/community/mushroom-strategy directory for testing. Remember to clear the cache of your Home Assistant client to see the changes.

    Info

    If your www/community/mushroom-strategy directory contains a file called mushroom-strategy.js.gz, rename or delete it.

  5. Format and Lint Your Changes:

    • Run the formatter with npm run json:format.
    • Run the formatter with npm run ts:format.
    • Build the strategy with npm run build.

    All of these tasks should result without errors.

  6. Commit Your Changes.

  7. Push to Your Fork.

  8. Open a Pull Request (PR).

Info

Integrating a new Translation:

Special Handling for language-country Locales: If you are adding a country-specific locale (e.g., es-ES for Spanish (Spain) or en-GB for English (United Kingdom)), you should create a file like en-GB.json in the translations folder. In src/utilities/localize.ts, you'll import it similarly and add it to the languages map using the full locale code. Please ensure you follow existing patterns for language-country codes, which typically use a hyphen (-) + a UPPER-cased country code in the file name and an underscore (_) + a lower-cased country code in the import key.

Example

import * as en from '../translations/en.json';\nimport * as pt_br from '../translations/pt-BR.json';\n\n/** Registry of currently supported languages */\nconst languages: Record<string, unknown> = {\n  en,\n  'pt-BR': pt_br,\n};\n
"},{"location":"contributing/workflow/","title":"\ud83d\ude80 Contributing Workflow","text":"

This guide outlines a common workflow for contributing to our project.

  1. Fork the Repository Start by forking our repository (the upstream project) to your own GitHub account. This creates a personal copy where you can make your changes without affecting the original project directly.

  2. Clone Your Fork Clone your forked repository from your GitHub account to your local machine.

  3. Set Up Your Local Development Environment Before making changes, ensure your local environment is ready. See Getting Started.

  4. Make Your Changes Work in a new branch for better organization and easier pull requests and Implement your bug fix, new feature, or documentation update. See chapters Code, Documentation, and Translations for guidance and details.

  5. Test Your Changes Thoroughly test your changes to ensure they work as expected, address the intended problem, and do not introduce any new issues or regressions.

  6. Format and Lint Your Changes Your code should be well-formatted and linted to ensure consistency and readability. If you've set up the project correctly, the tools for this should already be available to this project.

  7. Commit Your Changes Stage your changes and commit them with a clear, descriptive message. Aim for a concise subject line followed by a more detailed body if necessary. E.g.:

    Fix: Resolve issue with feature X\n\nA clear and concise description of what has been changed, why it was necessary, and any relevant context.\n
"},{"location":"getting-started/basic-setup/","title":"\u2699\ufe0f Basic Setup","text":"

To apply the Mushroom Strategy to a dashboard:

  1. In the UI of the dashboard, select in the top right corner.
  2. If not taken to a Raw Configuration editor, click the three-dot menu in the top right corner.
  3. Select Raw configuration editor.
  4. Empty the configuration and add the following lines:
strategy:\n  type: custom:mushroom-strategy\n

Warning

You may see the following error:

 Error loading the dashboard strategy:\n     Error: Timeout waiting for strategy\n     element ||-strategy-mushroom-strategy to\n     be registered\n

This is mainly because of cache issues or HACS didn't create a reference. Try clearing the cache of your client and/or re-downloading the strategy from HACS.

If it still doesn't work, please consult guide How to solve: Error loading the dashboard strategy.

"},{"location":"getting-started/installation/","title":"\ud83d\ude80 Installation","text":""},{"location":"getting-started/installation/#prerequisites","title":"\u2699\ufe0f Prerequisites","text":"

Mushroom dashboard strategy and dependencies are available in HACS (Home Assistant Community Store). Install HACS if you don't have it already. For assistance, you can follow the installation guide.

Once you have HACS installed, you can install custom integration and plug-ins. This guide offers you badges to open your Home Assistant on the correct page. If the badges don't work, try installing from HACS manually:

  1. Open HACS in Home Assistant (Usually in the menu on the left side).
  2. At the top, search for the component you want to install.
  3. Select the three-dot menu on the right side of the component and select Download.
  4. Choose the desired version and select Download again.

You need to install the following HACS integrations before you can use this strategy. Click the badges below and follow the installation instructions. They will open the HACS repository at your Home Assistant instance directly.

to install Mushroom. to install Mini graph card.

"},{"location":"getting-started/installation/#dashboard-installation","title":"\ud83d\udee0\ufe0f Dashboard Installation","text":"

If you meet all the prerequisites, click the badge below to install the strategy.

"},{"location":"getting-started/installation/#local-installation","title":"\ud83d\udee0\ufe0f Local Installation","text":"

Please install the strategy with HACS as described above. If you require testing a custom build for debug purposes, follow these steps:

  1. Build the strategy with npm build or npm build-dev.
  2. Copy the build file(s) to folder <your-hass-directory>/www/community/mushroom-strategy.
  3. If file mushroom-strategy.js.gz exists in that folder, rename or delete it.

Note

Refresh the cache of the client you use to access Home Assistant.

"},{"location":"getting-started/installation/#updating","title":"\ud83d\udd04 Updating","text":"

By default, Home Assistant will notify you when an update of the strategy is available. You can update the strategy by going to Settings found at the bottom of the sidebar.

Tip

You can enable notifications of pre-releases.

"},{"location":"options/","title":"\u2699\ufe0f Overview","text":"

The dashboard can be highly customized using the options parameter in the yaml configuration of your dashboard.

strategy:\n  type: custom:mushroom-strategy\n  options:\n    # Custom Configuration\n

By default,

The options are divided into groups as described below.

Name Type Default Description areas object undisclosed See Area Options. card_options object empty See Card Options. domains object All supported domains See Domain Options. home_view object unset See Home View Options. chips object All supported chips See Chip Options. quick_access_cards array of cards empty List of cards to show between the greeting card and the area cards.See Quick Access Cards. extra_cards array of cards empty List of cards to show below the area cards.See extra Cards. views object All supported views See View Options. extra_views array of views empty List of user defined views to add to the dashboard.See Extra Views."},{"location":"options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    areas:\n      family_room_id:\n        name: Family Room\n        icon: mdi:sofa\n        icon_color: green\n
"},{"location":"options/area-options/","title":"\ud83d\udecb\ufe0f Area Options","text":"

The areas group enables you to specify the configuration of specific areas. Each configuration is identified by an area id and can have the following options:

Name Type Default Description extra_cards array of cards [] A list of cards to show on the top of the area sub-view. hidden boolean false Set to true to exclude the area from the dashboard and views. name string Area specific The name of the area. order number unset Ordering position of the area in the list of available areas. type string default Set to a type of area card. (Currently supported: default & HaAreaCard

Also, all options from the Template mushroom card and/or Home Assistant Area card are supported. Please follow the links below to see the additional options per card type.

"},{"location":"options/area-options/#extra-cards","title":"Extra Cards","text":"

The extra_cards group enables you to specify the configuration of additional cards an Area view. These cards will be shown last in the view.

See Home View Options \u2192 Extra Cards for more information.

"},{"location":"options/area-options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    areas:\n      family_room_id:\n        name: Family Room\n        icon: mdi:television\n        icon_color: green\n        order: 1\n        extra_cards:\n          - type: custom:mushroom-chips-card\n            chips:\n              - type: entity\n                entity: sensor.family_room_temperature\n                icon: mdi:thermometer\n                icon_color: pink\n            alignment: center\n      kitchen_id:\n        name: Kitchen\n        icon: mdi:silverware-fork-knife\n        icon_color: red\n        order: 2\n      garage_id:\n        hidden: true\n      hallway_id:\n        type: HaAreaCard\n        extra_cards:\n          - type: custom:xiaomi-vacuum-map-card\n            map_source:\n              camera: camera.xiaomi_cloud_map_extractor\n            calibration_source:\n              camera: true\n            entity: vacuum.robot_vacuum\n            vacuum_platform: default\nviews: []\n
"},{"location":"options/area-options/#undisclosed-area","title":"Undisclosed Area","text":"

The strategy has a special area, named undisclosed. This area is enabled by default and includes the entities that aren't linked to any Home Assistant area.

The area can be configured like any other area as described above. To exclude this area from the dashboard and views, set its property hidden to true.

"},{"location":"options/area-options/#setting-options-for-all-areas","title":"Setting options for all areas","text":"

Use _ as an identifier to set the options for all areas. The following example sets the type of all area-cards to the one of Home Assistant:

"},{"location":"options/area-options/#example_1","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    areas:\n      _:\n        type: HaAreaCard\nviews: []\n

Note

Area specific options take precedence over options set for all areas!

"},{"location":"options/card-options/","title":"Card Options","text":"

The card_options group enables you to specify the configuration of entity cards. Each configuration is identified by an entity id and can have the following options:

name type default description hidden boolean false Set to true to exclude the card from the dashboard. type string domain specific The type for card to apply. ... ... type specific An option belonging to the given card type.

Depending on the type of card, you can also specify options belonging to that type.

Providing a device id will enable you to hide all the entities associated with that device.

"},{"location":"options/card-options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    card_options:\n      fan.master_bedroom_fan:\n        type: custom:mushroom-fan-card\n        icon: mdi:fan\n      remote.harmony_hub_wk:\n        hidden: true\n      077ba0492c9bb3b3134f1f3a626a: # this is a device id\n        hidden: true\n

Tip

You can build your card at another dashboard and copy the cards group from the YAML of that dashboard into group card_options of the strategy configuration. The YAML can be found in the Raw configuration editor.

"},{"location":"options/domain-options/","title":"\ud83d\udca1 Domain Options","text":"

The domains group enables you to specify the configuration of a domain in a view. Each configuration is identified by a domain name and can have the following options:

Option type Default Description hidden boolean false Set to true to exclude the domain from the dashboard. hide_config_entities boolean true Set to false to include config-entities to the dashboard. hide_diagnostic_entities boolean true Set to false to include diagnostic-entities to the dashboard. order number unset Ordering position of the domain entities in a view. showControls boolean true Weather to show controls in a view, to switch all entities of the domain. stack_count object {_: 1} Cards per row.1 title string domain specific Title of the domain in a view.

Note

"},{"location":"options/domain-options/#setting-options-for-all-domains","title":"Setting options for all domains","text":"

Use _ as the identifier to set options for all domains.

"},{"location":"options/domain-options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    domains:\n      _:\n        stack_count: 2\n        hide_config_entities: false\n      light:\n        title: \"My cool lights\"\n        order: 1\n      switch:\n        stack_count: 3\n        showControls: false\n      default: # All other domains\n        hidden: true\n
Click to expand the full list of supported domains
  1. In the different views, the cards belonging to a specific domain will be horizontally stacked into a row. The number of cards per row can be configured with this option.\u00a0\u21a9

"},{"location":"options/home-view-options/","title":"\ud83c\udfe0 Home View Options","text":"

The home_view group enables you to specify the configuration of the Home view.

Option type default Description hidden array [] Array of sections to hide from the home view. stack_count object {_: 2} Cards per row."},{"location":"options/home-view-options/#hiding-sections","title":"Hiding sections","text":"

The following sections can be hidden from the Home view:

"},{"location":"options/home-view-options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    home_view:\n      hidden:\n        - greeting\n        - areasTitle\n
"},{"location":"options/home-view-options/#stack-count","title":"Stack Count","text":"

The stack_count option is a map of sections to define the number of cards per row. The key of the map is the section, while the value is the number of cards per row.

The areas section is a special case, where the value is an array of two numbers. The first number is the number of default cards per row, while the second number is the number of Home Assistant cards per row.

"},{"location":"options/home-view-options/#example_1","title":"example","text":"
home_view:\n  stack_count:\n    _: 2         # Two cards per row for all sections.\n    persons: 3   # Three person cards per row.\n    areas: [2,1] # [Two Strategy Card per row, 1 HASS card per row]\n

Note

Section specific options take precedence over options set for all sections!

"},{"location":"options/home-view-options/#chip-options","title":"Chip Options","text":"

The mushroom strategy has chips that indicate the number of entities for a specific domain which are in an \"active\" state. Hidden/Disabled entities are excluded from this count.

The chips group enables you to specify the configuration of chips.

Name type default Description light_count boolean false Number of lights on. fan_count boolean false Number of fans on. cover_count boolean false Number of covers not closed. No tap action. switch_count boolean false Number of switches on. climate_count boolean false Number of climate not off. No tap action. weather_entity string auto Entity id for the weather chip to use. extra_chips array [] List of extra chips to show.

If weather_entity is set to auto, the weather chip uses the first entity of the weather domain it finds. You can define a custom entity to use by setting an entity id.

Note

To hide the weather chip, you should hide or disable the entity itself.

"},{"location":"options/home-view-options/#example_2","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    chips:\n      climate_count: false\n      cover_count: false\n      weather_entity: weather.forecast_home\n
"},{"location":"options/home-view-options/#extra-chips","title":"Extra Chips","text":"

To add custom chips, you can configure them in extra_chips. See Mushroom Chips for all available chips.

Tip

You can build your chips in a temporary card in another dashboard and copy the chips group from the YAML of that card into group extra_chips of the strategy configuration. The YAML can be found in the Raw configuration editor.

"},{"location":"options/home-view-options/#example_3","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    chips:\n      extra_chips:\n        - type: conditional\n          conditions:\n            - entity: lock.front_door\n              state: unlocked\n          chip:\n            type: entity\n            entity: lock.front_door\n            icon_color: red\n            content_info: none\n            tap_action:\n              action: toggle\n
"},{"location":"options/home-view-options/#quick-access-cards","title":"Quick Access Cards","text":"

The quick_access_cards group enables you to specify the configuration of additional cards in the view. These cards will be shown between the greeting card and area cards.

Each card can have the options as described at Card Options.

Tip

You can build your view in a temporary dashboard and copy the views group from the YAML of that dashboard into group extra_views of the strategy configuration. The YAML can be found in the Raw configuration editor.

"},{"location":"options/home-view-options/#example_4","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    quick_access_cards:\n      - type: custom:mushroom-title-card\n        title: Security\n      - type: custom:mushroom-cover-card\n        entity: cover.garage_door\n        show_buttons_control: true\n      - type: horizontal-stack\n        cards:\n          - type: custom:mushroom-lock-card\n            entity: lock.front_door\n          - type: custom:mushroom-entity-card\n            entity: sensor.front_door_lock_battery\n            name: Battery\n
"},{"location":"options/home-view-options/#extra-cards","title":"Extra Cards","text":"

The extra_cards group enables you to specify the configuration of additional cards in the view. These cards will be shown below the areas.

Each card can have the options as described at Card Options.

Tip

You can build your view in a temporary dashboard and copy the views group from the YAML of that dashboard into group extra_cards of the strategy configuration. The YAML can be found in the Raw configuration editor.

"},{"location":"options/home-view-options/#example_5","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    extra_cards:\n      - type: custom:xiaomi-vacuum-map-card\n        map_source:\n          camera: camera.xiaomi_cloud_map_extractor\n        calibration_source:\n          camera: true\n        entity: vacuum.robot_vacuum\n        vacuum_platform: default\n
  1. For some chips, the tap action is disabled.\u00a0\u21a9

"},{"location":"options/view-options/","title":"\ud83d\udc40 View Options","text":"

Mushroom strategy includes several views to control/view entities of a specific domain. Hidden/Disabled entities or linked to a hidden area are excluded from the view.

The following views are supported and enabled by default:

View Type Description camera object View to control cameras. climate object View to control climates. cover object View to control covers. fan object View to control fans. home object An overview of several entities and areas. light object View to control lights. lock object View to control locks. scene object View to control scenes. switch object View to control switches. vacuum object View to control vacuums. valve object View to control valves.

The views group enables you to specify the configuration of a view. Each configuration is identified by a view name and can have the following options:

name type Default description hidden boolean false Set to true to exclude the view from the dashboard icon string domain specific Icon of the view in the navigation bar. order string home, light, fan, cover, switch, climate, camera, vacuum, scene, lock, valve Ordering position of the view in the navigation bar. title string domain specific Title of the view in the navigation bar. (Shown when no icon is defined or hovering above it.)"},{"location":"options/view-options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    views:\n      light:\n        order: 0\n        title: illumination\n      switch:\n        order: 1\n        hidden: true\n        icon: mdi:toggle-switch\nviews: []\n
"},{"location":"options/view-options/#extra-views","title":"Extra Views","text":"

The extra_views group enables you to specify the configuration of additional views. Each view can have the options as described in the Home Assistant documentation.

Tip

You can build your view in a temporary dashboard and copy the views group from the YAML of that dashboard into group extra_views of the strategy configuration. The YAML can be found in the Raw configuration editor.

"},{"location":"options/view-options/#example_1","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    extra_views:\n      - theme: Backend-selected\n        title: cool view\n        path: cool-view\n        icon: mdi:emoticon-cool\n        badges: []\n        cards:\n          - type: markdown\n            content: I am cool\n
"}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the Mushroom Strategy Documentation","text":"

The Mushroom Strategy is an innovative solution for Home Assistant that empowers you to effortlessly create beautiful, intuitive, and automatically generated dashboards using the popular Mushroom cards.

Say goodbye to tedious manual YAML configuration for every card! With the Mushroom Strategy, you can define your entities, areas, and devices and let the strategy intelligently build a dynamic and responsive dashboard tailored to your smart home.

"},{"location":"#key-features-benefits","title":"\u2728 Key Features & Benefits","text":""},{"location":"#get-started-in-minutes","title":"\ud83d\ude80 Get Started in Minutes","text":"

Ready to transform your Home Assistant interface? Follow these guides to get your Mushroom Strategy dashboard up and running:

We're excited for you to experience the simplicity and power of the Mushroom Strategy. If you have questions, encounter issues, or want to contribute, please visit our GitHub repository and engage with the community!

Enjoying the Mushroom Strategy? Consider giving our project a star on GitHub and exploring ways to sponsor the project to support its continued development! Your support helps us grow and improve.

"},{"location":"#sneak-peak","title":"\ud83d\udc40 Sneak Peak","text":"Click here for more images..."},{"location":"faq/","title":"Frequently Asked Questions","text":"How do I add a device or entity to an area?

You can add devices to an area by going to Settings found at the bottom of the sidebar.

  1. Select Devices & services.
  2. Select Devices or Entitiesat the top.
  3. Choose the device or entity you wish to add to an area.
  4. Select or in the top right corner.
  5. Choose an area in the area field.

Warning

If you created an entity manually (in your configuration.yaml), you may need to create a unique_id before you can set an area to it. See Home Assistant's documentation for more info about unique ids.

How do I hide entities from the Strategy?

When creating this dashboard for the first time, you might be overwhelmed by the number of entities. To reduce the number of entities shown, you can hide these entities by following the steps below:

  1. Click and hold the entity.
  2. Click in the top right corner of the popup.
  3. Set Visible to off.

Note

If you don't want to hide the entity from all dashboards, you can use Card Options to hide specific entities and devices.

How do I get the id of entities, devices and areas? "},{"location":"full-example/","title":"\ud83d\udcdd Full example using all the options provided with the strategy","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    views:\n      light:\n        order: 1\n        title: illumination\n      switches:\n        hidden: true\n        icon: mdi:toggle-switch\n    home_view:\n      hidden:\n        - areasTitle\n        - greeting\n      stack_count:\n        areas: [2, 1]\n        persons: 3\n    domains:\n      _:\n        hide_config_entities: true\n        stack_count: 1\n      light:\n        order: 1\n        stack_count: 2\n        title: \"My cool lights\"\n    chips:\n      weather_entity: weather.forecast_home\n      climate_count: false\n      cover_count: false\n      extra_chips:\n        - type: conditional\n          conditions:\n            - entity: lock.front_door\n              state: unlocked\n          chip:\n            type: entity\n            entity: lock.front_door\n            icon_color: red\n            content_info: none\n            icon: ''\n            use_entity_picture: false\n            tap_action:\n              action: toggle\n        - type: conditional\n          conditions:\n            - entity: cover.garage_door\n              state_not: closed\n          chip:\n            type: entity\n            entity: cover.garage_door\n            icon_color: red\n            content_info: none\n            tap_action:\n              action: toggle\n    areas:\n      _:\n        type: default\n      family_room_id:\n        name: Family Room\n        icon: mdi:television\n        icon_color: green\n        extra_cards:\n          - type: custom:mushroom-chips-card\n            chips:\n              - type: entity\n                entity: sensor.family_room_temperature\n                icon: mdi:thermometer\n                icon_color: pink\n            alignment: center\n      kitchen_id:\n        name: Kitchen\n        icon: mdi:silverware-fork-knife\n        icon_color: red\n        order: 1\n      master_bedroom_id:\n        name: Master Bedroom\n        icon: mdi:bed-king\n        icon_color: blue\n      kids_bedroom_id:\n        name: Kids Bedroom\n        icon: mdi:flower-tulip\n        icon_color: green\n    card_options:\n      fan.master_bedroom_fan:\n        type: custom:mushroom-fan-card\n      remote.harmony_hub_wk:\n        hidden: true\n    quick_access_cards:\n      - type: custom:mushroom-cover-card\n        entity: cover.garage_door\n        show_buttons_control: true\n      - type: horizontal-stack\n        cards:\n          - type: custom:mushroom-lock-card\n            entity: lock.front_door\n          - type: custom:mushroom-entity-card\n            entity: sensor.front_door_lock_battery\n            name: Battery\n    extra_cards:\n      - type: custom:xiaomi-vacuum-map-card\n        map_source:\n          camera: camera.xiaomi_cloud_map_extractor\n        calibration_source:\n          camera: true\n        entity: vacuum.robot_vacuum\n        vacuum_platform: default\n    extra_views:\n      - theme: Backend-selected\n        title: Cool view\n        path: cool-view\n        icon: mdi:emoticon-cool\n        badges: []\n        cards:\n          - type: markdown\n            content: I am cool\n
"},{"location":"contributing/","title":"\ud83e\udd1d Contributing to Mushroom Strategy","text":"

We love contributions from the community! Whether you're reporting a bug, suggesting a new feature, or submitting code changes, your help makes the Mushroom Strategy better for everyone.

Please take a moment to review this guide before making a contribution.

"},{"location":"contributing/#code-of-conduct","title":"\ud83d\udcdc Code of Conduct","text":"

To ensure a welcoming and inclusive environment, all contributors are expected to adhere to our Code of Conduct. Please read it carefully.

"},{"location":"contributing/#reporting-bugs","title":"\ud83d\udc1e Reporting Bugs","text":"

Found a bug? That's not ideal, but your report helps us squash it!

  1. Check existing issues: Before opening a new issue, please search our GitHub Issues or Discussions to see if the bug has already been reported.
  2. Open a new issue: If it's a new bug, please open a new issue.
  3. Provide details: In your report, please follow the instructions and template to include:

  4. A clear and concise description of the bug.

  5. Steps to reproduce the behavior.
  6. Expected behavior.
  7. Screenshots or animated GIFs (if applicable).
  8. Your Home Assistant version and Mushroom Strategy version.
"},{"location":"contributing/#suggesting-features","title":"\u2728 Suggesting Features","text":"

Have a great idea for a new feature or enhancement? We'd love to hear it!

  1. Check existing suggestions: Search our GitHub Issues or Discussions to see if the feature has already been requested.
  2. Open a new issue: If it's a new idea, open a new issue.
  3. Describe your idea: Clearly explain the feature, why you think it's useful, and any potential use cases by following the instructions and template.
"},{"location":"contributing/#get-support","title":"\ud83d\ude4f Get Support","text":"

If you have questions about contributing or need help with your setup, please open a discussion on our GitHub repository.

"},{"location":"contributing/code/","title":"\ud83d\udcbb Contributing Code","text":"

Want to get your hands dirty with the code? Awesome! We appreciate all code contributions.

  1. Follow the Workflow:

  2. Make Your Changes: Implement your bug fix or new feature.

  3. Test Your Changes: Thoroughly test your changes to ensure they work as expected and don't introduce new issues.

    • You can build the strategy with npm run build (for production) or npm run build-dev (for development/testing).
    • Copy the built files to your Home Assistant's www/community/mushroom-strategy directory for testing. Remember to clear the cache of your Home Assistant client to see the changes.

    Info

    If your www/community/mushroom-strategy directory contains a file called mushroom-strategy.js.gz, rename or delete it.

  4. Format and Lint Your Changes:

    • Run the formatter with npm run ts:format.
    • Build the strategy with npm run build.

    Both of these tasks should result without errors.

  5. Commit Your Changes.

  6. Push to Your Fork.

  7. Open a Pull Request (PR).

Thank you for taking the time to help us improve our project! Your contributions make a real difference. \ud83c\udf89

"},{"location":"contributing/documentation/","title":"\ud83d\udcc4 Contributing to the Documentation","text":"

Good documentation is crucial for our project's success! We truly appreciate any contributions, whether it's fixing a typo, clarifying a section, adding more examples, or even extending existing topics. This guide will walk you through the process of contributing.

The entire documentation lives in the docs/ folder of this repository.

  1. Follow the Workflow:

  2. Serve the Documentation Locally: Start the local development server. This task needs to be run from the project root (where the mkdocs.yml file is):

    mkdocs serve\n

    This will usually launch a local server, at http://127.0.0.1:8000. The server will automatically reload in your browser as you make and save changes to the documentation files. To stop the server, press Ctrl + C in the terminal.

  3. Edit Markdown Files: All documentation content is written in Markdown (.md files). You can find them within the docs/ folder.

    • For advanced formatting options, refer to the Material for MkDocs reference.
  4. Add New Pages:

    • Create a new .md file in the most appropriate directory within docs/.

    Important

    You'll need to add the new page to the navigation (nav) section of the mkdocs.yml file for it to appear in the sidebar. Follow the existing structure.

  5. Add Images:

    • Place any image files into the docs/images/ directory.
    • Reference them in your Markdown using the syntax: ![Alt text for accessibility](images/your-image-name.png)
  6. Preview Changes: As you save your .md files, the local server running at http://127.0.0.1:8000 will automatically refresh, allowing you to see your changes instantly.

  7. Format and Lint Your Changes:

    • Build the linter with npm run md:lint-fix.

    This task should result without errors.

  8. Commit Your Changes.

  9. Push to Your Fork.

  10. Open a Pull Request (PR).

"},{"location":"contributing/documentation/#documentation-style-and-quality","title":"Documentation Style and Quality","text":"

To maintain consistency and quality:

Thank you for taking the time to help us improve our documentation! Your contributions make a real difference. \ud83c\udf89

"},{"location":"contributing/getting-started/","title":"\ud83d\ude80 Getting Started","text":""},{"location":"contributing/getting-started/#prerequisites","title":"\u2699\ufe0f Prerequisites","text":"

Before you begin, make sure you have the following installed on your system:

For contributing to the documentation, the following prerequisites are also required:

"},{"location":"contributing/getting-started/#local-environment","title":"\ud83d\udee0\ufe0f Local Environment","text":"

To make and preview your changes, you'll need to set up a development environment locally:

  1. Fork the Repository: Go to our main repository on GitHub and click the \"Fork\" button. This creates a copy of the repository under your GitHub account.

  2. Clone Your Fork: On your local machine, clone your forked repository using Git.

  3. Install Node.js Dependencies: Navigate to the root of the cloned project (where package.json is located) and install its dependencies:

    npm install\n
  4. Install Python Documentation Tools: Navigate to the root of the cloned project (where mkdocs.yml is located) and install MkDocs along with the necessary themes and plugins:

    pip install mkdocs mkdocs-material mkdocs-material-extensions\n
"},{"location":"contributing/translations/","title":"\ud83c\udf10 Translations","text":"

Help us make Mushroom Strategy accessible to more users around the world by contributing and improving translations!

Language tags have to follow BCP 47. A list of most language tags can be found here: IANA subtag registry. Examples: fr, fr-CA, zh-Hans.

  1. Check for Existing Translations: See if your language is already being worked on or exists.
  2. Locate Translation Files: Language files are found within the src/translations directory. Each language has its own locale.json file (e.g., en.json, nl.json, pt-BR.json).
  3. Create or Update:

    • To create a new language: Copy an existing .json file (e.g., en.json), rename it to your language code (e.g., de.json for German), and translate the property values.
    • To update an existing language: Open the .json file for your language and update any missing or outdated translations.
  4. Test Your Changes: Thoroughly test your changes to ensure they work as expected and don't introduce new issues.

    • You can build the strategy with npm run build (for production) or npm run build-dev (for development/testing).
    • Copy the built files to your Home Assistant's www/community/mushroom-strategy directory for testing. Remember to clear the cache of your Home Assistant client to see the changes.

    Info

    If your www/community/mushroom-strategy directory contains a file called mushroom-strategy.js.gz, rename or delete it.

  5. Format and Lint Your Changes:

    • Run the formatter with npm run json:format.
    • Run the formatter with npm run ts:format.
    • Build the strategy with npm run build.

    All of these tasks should result without errors.

  6. Commit Your Changes.

  7. Push to Your Fork.

  8. Open a Pull Request (PR).

Info

Integrating a new Translation:

Special Handling for language-country Locales: If you are adding a country-specific locale (e.g., es-ES for Spanish (Spain) or en-GB for English (United Kingdom)), you should create a file like en-GB.json in the translations folder. In src/utilities/localize.ts, you'll import it similarly and add it to the languages map using the full locale code. Please ensure you follow existing patterns for language-country codes, which typically use a hyphen (-) + a UPPER-cased country code in the file name and an underscore (_) + a lower-cased country code in the import key.

Example

import * as en from '../translations/en.json';\nimport * as pt_br from '../translations/pt-BR.json';\n\n/** Registry of currently supported languages */\nconst languages: Record<string, unknown> = {\n  en,\n  'pt-BR': pt_br,\n};\n
"},{"location":"contributing/workflow/","title":"\ud83d\ude80 Contributing Workflow","text":"

This guide outlines a common workflow for contributing to our project.

  1. Fork the Repository Start by forking our repository (the upstream project) to your own GitHub account. This creates a personal copy where you can make your changes without affecting the original project directly.

  2. Clone Your Fork Clone your forked repository from your GitHub account to your local machine.

  3. Set Up Your Local Development Environment Before making changes, ensure your local environment is ready. See Getting Started.

  4. Make Your Changes Work in a new branch for better organization and easier pull requests and Implement your bug fix, new feature, or documentation update. See chapters Code, Documentation, and Translations for guidance and details.

  5. Test Your Changes Thoroughly test your changes to ensure they work as expected, address the intended problem, and do not introduce any new issues or regressions.

  6. Format and Lint Your Changes Your code should be well-formatted and linted to ensure consistency and readability. If you've set up the project correctly, the tools for this should already be available to this project.

  7. Commit Your Changes Stage your changes and commit them with a clear, descriptive message. Aim for a concise subject line followed by a more detailed body if necessary. E.g.:

    Fix: Resolve issue with feature X\n\nA clear and concise description of what has been changed, why it was necessary, and any relevant context.\n
"},{"location":"getting-started/basic-setup/","title":"\u2699\ufe0f Basic Setup","text":"

To apply the Mushroom Strategy to a dashboard:

  1. In the UI of the dashboard, select in the top right corner.
  2. If not taken to a Raw Configuration editor, click the three-dot menu in the top right corner.
  3. Select Raw configuration editor.
  4. Empty the configuration and add the following lines:
strategy:\n  type: custom:mushroom-strategy\n

Warning

You may see the following error:

 Error loading the dashboard strategy:\n     Error: Timeout waiting for strategy\n     element ||-strategy-mushroom-strategy to\n     be registered\n

This is mainly because of cache issues or HACS didn't create a reference. Try clearing the cache of your client and/or re-downloading the strategy from HACS.

If it still doesn't work, please consult guide How to solve: Error loading the dashboard strategy.

"},{"location":"getting-started/installation/","title":"\ud83d\ude80 Installation","text":""},{"location":"getting-started/installation/#prerequisites","title":"\u2699\ufe0f Prerequisites","text":"

Mushroom dashboard strategy and dependencies are available in HACS (Home Assistant Community Store). Install HACS if you don't have it already. For assistance, you can follow the installation guide.

Once you have HACS installed, you can install custom integration and plug-ins. This guide offers you badges to open your Home Assistant on the correct page. If the badges don't work, try installing from HACS manually:

  1. Open HACS in Home Assistant (Usually in the menu on the left side).
  2. At the top, search for the component you want to install.
  3. Select the three-dot menu on the right side of the component and select Download.
  4. Choose the desired version and select Download again.

You need to install the following HACS integrations before you can use this strategy. Click the badges below and follow the installation instructions. They will open the HACS repository at your Home Assistant instance directly.

to install Mushroom. to install Mini graph card.

"},{"location":"getting-started/installation/#dashboard-installation","title":"\ud83d\udee0\ufe0f Dashboard Installation","text":"

If you meet all the prerequisites, click the badge below to install the strategy.

"},{"location":"getting-started/installation/#local-installation","title":"\ud83d\udee0\ufe0f Local Installation","text":"

Please install the strategy with HACS as described above. If you require testing a custom build for debug purposes, follow these steps:

  1. Build the strategy with npm build or npm build-dev.
  2. Copy the build file(s) to folder <your-hass-directory>/www/community/mushroom-strategy.
  3. If file mushroom-strategy.js.gz exists in that folder, rename or delete it.

Note

Refresh the cache of the client you use to access Home Assistant.

"},{"location":"getting-started/installation/#updating","title":"\ud83d\udd04 Updating","text":"

By default, Home Assistant will notify you when an update of the strategy is available. You can update the strategy by going to Settings found at the bottom of the sidebar.

Tip

You can enable notifications of pre-releases.

"},{"location":"options/","title":"\u2699\ufe0f Overview","text":"

The dashboard can be highly customized using the options parameter in the yaml configuration of your dashboard.

strategy:\n  type: custom:mushroom-strategy\n  options:\n    # Custom Configuration\n

By default,

The options are divided into groups as described below.

Name Type Default Description areas object undisclosed See Area Options. card_options object empty See Card Options. domains object All supported domains See Domain Options. home_view object unset See Home View Options. chips object All supported chips See Chip Options. quick_access_cards array of cards empty List of cards to show between the greeting card and the area cards.See Quick Access Cards. extra_cards array of cards empty List of cards to show below the area cards.See extra Cards. views object All supported views See View Options. extra_views array of views empty List of user defined views to add to the dashboard.See Extra Views."},{"location":"options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    areas:\n      family_room_id:\n        name: Family Room\n        icon: mdi:sofa\n        icon_color: green\n
"},{"location":"options/area-options/","title":"\ud83d\udecb\ufe0f Area Options","text":"

The areas group enables you to specify the configuration of specific areas. Each configuration is identified by an area id and can have the following options:

Name Type Default Description extra_cards array of cards [] A list of cards to show on the top of the area sub-view. hidden boolean false Set to true to exclude the area from the dashboard and views. name string Area specific The name of the area. order number unset Ordering position of the area in the list of available areas. type string default Set to a type of area card. (Currently supported: default & HaAreaCard

Also, all options from the Template mushroom card and/or Home Assistant Area card are supported. Please follow the links below to see the additional options per card type.

"},{"location":"options/area-options/#extra-cards","title":"Extra Cards","text":"

The extra_cards group enables you to specify the configuration of additional cards an Area view. These cards will be shown last in the view.

See Home View Options \u2192 Extra Cards for more information.

"},{"location":"options/area-options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    areas:\n      family_room_id:\n        name: Family Room\n        icon: mdi:television\n        icon_color: green\n        order: 1\n        extra_cards:\n          - type: custom:mushroom-chips-card\n            chips:\n              - type: entity\n                entity: sensor.family_room_temperature\n                icon: mdi:thermometer\n                icon_color: pink\n            alignment: center\n      kitchen_id:\n        name: Kitchen\n        icon: mdi:silverware-fork-knife\n        icon_color: red\n        order: 2\n      garage_id:\n        hidden: true\n      hallway_id:\n        type: HaAreaCard\n        extra_cards:\n          - type: custom:xiaomi-vacuum-map-card\n            map_source:\n              camera: camera.xiaomi_cloud_map_extractor\n            calibration_source:\n              camera: true\n            entity: vacuum.robot_vacuum\n            vacuum_platform: default\nviews: []\n
"},{"location":"options/area-options/#undisclosed-area","title":"Undisclosed Area","text":"

The strategy has a special area, named undisclosed. This area is enabled by default and includes the entities that aren't linked to any Home Assistant area.

The area can be configured like any other area as described above. To exclude this area from the dashboard and views, set its property hidden to true.

"},{"location":"options/area-options/#setting-options-for-all-areas","title":"Setting options for all areas","text":"

Use _ as an identifier to set the options for all areas. The following example sets the type of all area-cards to the one of Home Assistant:

"},{"location":"options/area-options/#example_1","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    areas:\n      _:\n        type: HaAreaCard\nviews: []\n

Note

Area specific options take precedence over options set for all areas!

"},{"location":"options/card-options/","title":"Card Options","text":"

The card_options group enables you to specify the configuration of entity cards. Each configuration is identified by an entity id and can have the following options:

name type default description hidden boolean false Set to true to exclude the card from the dashboard. type string domain specific The type for card to apply. ... ... type specific An option belonging to the given card type.

Depending on the type of card, you can also specify options belonging to that type.

Providing a device id will enable you to hide all the entities associated with that device.

"},{"location":"options/card-options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    card_options:\n      fan.master_bedroom_fan:\n        type: custom:mushroom-fan-card\n        icon: mdi:fan\n      remote.harmony_hub_wk:\n        hidden: true\n      077ba0492c9bb3b3134f1f3a626a: # this is a device id\n        hidden: true\n

Tip

You can build your card at another dashboard and copy the cards group from the YAML of that dashboard into group card_options of the strategy configuration. The YAML can be found in the Raw configuration editor.

"},{"location":"options/domain-options/","title":"\ud83d\udca1 Domain Options","text":"

The domains group enables you to specify the configuration of a domain in a view. Each configuration is identified by a domain name and can have the following options:

Option type Default Description hidden boolean false Set to true to exclude the domain from the dashboard. hide_config_entities boolean true Set to false to include config-entities to the dashboard. hide_diagnostic_entities boolean true Set to false to include diagnostic-entities to the dashboard. order number unset Ordering position of the domain entities in a view. showControls boolean true Weather to show controls in a view, to switch all entities of the domain. stack_count object {_: 1} Cards per row.1 title string domain specific Title of the domain in a view.

Note

"},{"location":"options/domain-options/#setting-options-for-all-domains","title":"Setting options for all domains","text":"

Use _ as the identifier to set options for all domains.

"},{"location":"options/domain-options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    domains:\n      _:\n        stack_count: 2\n        hide_config_entities: false\n      light:\n        title: \"My cool lights\"\n        order: 1\n      switch:\n        stack_count: 3\n        showControls: false\n      default: # All other domains\n        hidden: true\n
Click to expand the full list of supported domains
  1. In the different views, the cards belonging to a specific domain will be horizontally stacked into a row. The number of cards per row can be configured with this option.\u00a0\u21a9

"},{"location":"options/home-view-options/","title":"\ud83c\udfe0 Home View Options","text":"

The home_view group enables you to specify the configuration of the Home view.

Option type default Description hidden array [] Array of sections to hide from the home view. stack_count object {_: 2} Cards per row."},{"location":"options/home-view-options/#hiding-sections","title":"Hiding sections","text":"

The following sections can be hidden from the Home view:

"},{"location":"options/home-view-options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    home_view:\n      hidden:\n        - greeting\n        - areasTitle\n
"},{"location":"options/home-view-options/#stack-count","title":"Stack Count","text":"

The stack_count option is a map of sections to define the number of cards per row. The key of the map is the section, while the value is the number of cards per row.

The areas section is a special case, where the value is an array of two numbers. The first number is the number of default cards per row, while the second number is the number of Home Assistant cards per row.

"},{"location":"options/home-view-options/#example_1","title":"example","text":"
home_view:\n  stack_count:\n    _: 2         # Two cards per row for all sections.\n    persons: 3   # Three person cards per row.\n    areas: [2,1] # [Two Strategy Card per row, 1 HASS card per row]\n

Note

Section specific options take precedence over options set for all sections!

"},{"location":"options/home-view-options/#chip-options","title":"Chip Options","text":"

The mushroom strategy has chips that indicate the number of entities for a specific domain which are in an \"active\" state. Hidden/Disabled entities are excluded from this count.

The chips group enables you to specify the configuration of chips.

Name type default Description light_count boolean false Number of lights on. fan_count boolean false Number of fans on. cover_count boolean false Number of covers not closed. No tap action. switch_count boolean false Number of switches on. climate_count boolean false Number of climate not off. No tap action. weather_entity string auto Entity id for the weather chip to use. extra_chips array [] List of extra chips to show.

If weather_entity is set to auto, the weather chip uses the first entity of the weather domain it finds. You can define a custom entity to use by setting an entity id.

Note

To hide the weather chip, you should hide or disable the entity itself.

"},{"location":"options/home-view-options/#example_2","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    chips:\n      climate_count: false\n      cover_count: false\n      weather_entity: weather.forecast_home\n
"},{"location":"options/home-view-options/#extra-chips","title":"Extra Chips","text":"

To add custom chips, you can configure them in extra_chips. See Mushroom Chips for all available chips.

Tip

You can build your chips in a temporary card in another dashboard and copy the chips group from the YAML of that card into group extra_chips of the strategy configuration. The YAML can be found in the Raw configuration editor.

"},{"location":"options/home-view-options/#example_3","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    chips:\n      extra_chips:\n        - type: conditional\n          conditions:\n            - entity: lock.front_door\n              state: unlocked\n          chip:\n            type: entity\n            entity: lock.front_door\n            icon_color: red\n            content_info: none\n            tap_action:\n              action: toggle\n
"},{"location":"options/home-view-options/#quick-access-cards","title":"Quick Access Cards","text":"

The quick_access_cards group enables you to specify the configuration of additional cards in the view. These cards will be shown between the greeting card and area cards.

Each card can have the options as described at Card Options.

Tip

You can build your view in a temporary dashboard and copy the views group from the YAML of that dashboard into group extra_views of the strategy configuration. The YAML can be found in the Raw configuration editor.

"},{"location":"options/home-view-options/#example_4","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    quick_access_cards:\n      - type: custom:mushroom-title-card\n        title: Security\n      - type: custom:mushroom-cover-card\n        entity: cover.garage_door\n        show_buttons_control: true\n      - type: horizontal-stack\n        cards:\n          - type: custom:mushroom-lock-card\n            entity: lock.front_door\n          - type: custom:mushroom-entity-card\n            entity: sensor.front_door_lock_battery\n            name: Battery\n
"},{"location":"options/home-view-options/#extra-cards","title":"Extra Cards","text":"

The extra_cards group enables you to specify the configuration of additional cards in the view. These cards will be shown below the areas.

Each card can have the options as described at Card Options.

Tip

You can build your view in a temporary dashboard and copy the views group from the YAML of that dashboard into group extra_cards of the strategy configuration. The YAML can be found in the Raw configuration editor.

"},{"location":"options/home-view-options/#example_5","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    extra_cards:\n      - type: custom:xiaomi-vacuum-map-card\n        map_source:\n          camera: camera.xiaomi_cloud_map_extractor\n        calibration_source:\n          camera: true\n        entity: vacuum.robot_vacuum\n        vacuum_platform: default\n
  1. For some chips, the tap action is disabled.\u00a0\u21a9

"},{"location":"options/view-options/","title":"\ud83d\udc40 View Options","text":"

Mushroom strategy includes several views to control/view entities of a specific domain. Hidden/Disabled entities or linked to a hidden area are excluded from the view.

The following views are supported and enabled by default:

View Type Description camera object View to control cameras. climate object View to control climates. cover object View to control covers. fan object View to control fans. home object An overview of several entities and areas. light object View to control lights. lock object View to control locks. scene object View to control scenes. switch object View to control switches. vacuum object View to control vacuums. valve object View to control valves.

The views group enables you to specify the configuration of a view. Each configuration is identified by a view name and can have the following options:

name type Default description hidden boolean false Set to true to exclude the view from the dashboard icon string domain specific Icon of the view in the navigation bar. order string home, light, fan, cover, switch, climate, camera, vacuum, scene, lock, valve Ordering position of the view in the navigation bar. title string domain specific Title of the view in the navigation bar. (Shown when no icon is defined or hovering above it.)"},{"location":"options/view-options/#example","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    views:\n      light:\n        order: 0\n        title: illumination\n      switch:\n        order: 1\n        hidden: true\n        icon: mdi:toggle-switch\nviews: []\n
"},{"location":"options/view-options/#extra-views","title":"Extra Views","text":"

The extra_views group enables you to specify the configuration of additional views. Each view can have the options as described in the Home Assistant documentation.

Extra views are sorted by order first and then by title, together with the build-in views.

Tip

You can build your view in a temporary dashboard and copy the views group from the YAML of that dashboard into group extra_views of the strategy configuration. The YAML can be found in the Raw configuration editor.

"},{"location":"options/view-options/#example_1","title":"Example","text":"
strategy:\n  type: custom:mushroom-strategy\n  options:\n    extra_views:\n      - theme: Backend-selected\n        title: cool view\n        path: cool-view\n        order: Infinity\n        icon: mdi:emoticon-cool\n        badges: []\n        cards:\n          - type: markdown\n            content: I am cool\n
"}]} \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml index 34e092d..c09627e 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -2,70 +2,70 @@ https://digilive.github.io/mushroom-strategy/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/faq/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/full-example/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/contributing/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/contributing/code/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/contributing/documentation/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/contributing/getting-started/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/contributing/translations/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/contributing/workflow/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/getting-started/basic-setup/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/getting-started/installation/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/options/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/options/area-options/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/options/card-options/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/options/domain-options/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/options/home-view-options/ - 2025-05-31 + 2025-06-01 https://digilive.github.io/mushroom-strategy/options/view-options/ - 2025-05-31 + 2025-06-01 \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz index 57eaed5..1fb1457 100644 Binary files a/sitemap.xml.gz and b/sitemap.xml.gz differ