Reusable Home Assistant assets for ViewAssist dashboards with per-area navigation and dynamic room/light panels.
blueprints/va-room-light-blueprint.yml: Automation blueprint that:- Loads an area-to-entities map
- Pushes
area_entity_listandareas_entity_mapinto ViewAssist entities - Handles voice navigation for Lights, Room, and Areas panels
views/lights.yml: Dynamic per-area lights/scenes panelviews/room.yml: Dynamic per-area room status/control panelviews/areas.yml: Area launcher panel with high-level room chipstemplates/custom_icon_templates.yml: Optional button-card templates for menu shortcutsexamples/areas-example.json: Generic example area/entity mappingareas-mysetup.json: Personal/local mapping (gitignored)
- Home Assistant with:
- ViewAssist
button-card- Mushroom cards
card-mod
- A ViewAssist dashboard already created
- ViewAssist satellite/audio entities assigned to Home Assistant Areas
- Copy
blueprints/va-room-light-blueprint.ymlto:/config/blueprints/automation/<your_namespace>/
- Import the blueprint in Home Assistant Automation UI.
- Use
examples/areas-example.jsonas your template and create your own local mapping JSON. - Create 3 panel views in your ViewAssist dashboard:
- Lights (
views/lights.yml) - Room (
views/room.yml) - Areas (
views/areas.yml)
- Lights (
- Add optional menu templates from
templates/custom_icon_templates.ymlunderbutton_card_templatesin your raw dashboard YAML. - Run the automation once manually, then test voice commands.
Default commands included in blueprint inputs:
show lightsshow <area> lightsshow roomshow <area> roomshow areas
- Area names from voice are normalized to lowercase snake_case (
Living Room->living_room). areas_jsonkeys should match normalized area IDs used by your setup.areas-mysetup.jsonis intended for local/private data and excluded from git.
See INSTALL.md for full setup instructions.
This is a personal project and support is best-effort. Pull requests are welcome, but review/merge timing is not guaranteed.
This project is licensed under the MIT License. See LICENSE.