|
|
1 week ago | |
|---|---|---|
| .. | ||
| bedroom | 2 weeks ago | |
| infrastructure | 1 week ago | |
| kiosk | 2 months ago | |
| kiosk_satellite_staging | 2 weeks ago | |
| overview | 2 weeks ago | |
| shared | 8 months ago | |
| README.md | 2 weeks ago | |
| SCRATCHPAD.md | 8 months ago | |
| resources.yaml | 2 months ago | |
README.md
Bear Stone Smart Home Documentation
Be sure to ⭐ my configuration repo so you can keep up to date on any daily progress!
Dashboards (Lovelace YAML)
This folder holds YAML-managed Home Assistant Lovelace dashboards and UI resources.
Walkthrough
- Mobile quick-access video:
- Mobile quick-access companion post:
- Video:
- Companion post:
- Kiosk camera tablet video:
Why this exists
- Home Assistant stores dashboards and resources in
config/.storage/by default (runtime state). - YAML dashboards make the UI version-controllable and editable by automation tools (including Codex).
What is in here
resources.yaml- Lovelace JS resources used by custom cards (HACS and local resources).
- This is used when
lovelace.resource_mode: yamlis enabled.
SCRATCHPAD.md- Parking lot for multi-step dashboard work and patterns.
<dashboard>/- One folder per dashboard (example:
overview/,infrastructure/,kiosk/). dashboard.yamlis the dashboard entrypoint.views/contains one YAML file per view.partials/is reusable card lists included into views.popups/is reusable standalone popup cards (typicallybubble-card) included into views.card_mod/is CSS overrides (use only when card-native options are insufficient).
- One folder per dashboard (example:
shared/- Cross-dashboard reuse only. If something is only used by one dashboard, keep it in that dashboard folder.
Mobile Quick Access
- Mobile is the second visible Overview view, directly after Home and before Cameras.
- Two-column controls use large labels, states, icons, and touch targets for quick use without glasses.
- Primary actions cover garage doors, the front-door lock, thermostats, household alerts, and entry-point status.
- Packages opens the doorbell camera; Systems opens the desktop control center; destination views place a large Back to Home control at the top.
Camera Overview
The Camera tab keeps the doorbell and pool on the left, three exterior cameras across the upper right, and Kids Gate, Bedroom Gate, Filter Gate, and Conico Wireless across the second right-hand row. A full-width grid prevents the camera group from wrapping below the doorbell on desktop; narrow screens reflow into two columns. Recent Frigate events remain below the camera rows.
Event-Driven Kiosk Dashboards
- Logic and recovery package:
- Bedroom dashboard:
- Bedroom landscape view:
- Android 5 fixed-dark renderer:
- Kiosk Satellite preview:
- Kitchen tablet view:
- Automatic day/night theme:
The displays share only the reusable event and screen-policy state they need. Kitchen keeps its clock/current-weather/forecast banner and rotating household context, including the next confirmed cruise countdown and 48-hour Carlo/Stacey bowling-result highlights, while the fixed-landscape Bedroom dashboard omits the redundant clock and uses that space for the next wake alarm, security/weather context, larger Front Lawn and Driveway feeds, and a readable household alert. Both use the same Garage-then-Front-Door event priority, with Garage held for three minutes after both doors close before the default dashboard returns. A lower-priority Frigate Driveway alert replaces both displays with the live Driveway feed until occupancy clears or ten minutes elapse, whichever happens first. The canonical Bedroom Lovelace view and its Android 5 lightweight renderer consume the same camera, header, and alert sensors; the renderer bypasses only the unsupported Home Assistant frontend on the frozen Fire WebView and stays dark at all times for bedroom readability. Kitchen uses native Kiosk Satellite overlays for Garage and Front Door, a full-view Lovelace Driveway alert, and idle dimming; Home Assistant handles household sleep/away enforcement, volume, and event-camera wake instead of periodically forcing the screen on. Nearby rain or lightning starts one five-minute NOAA radar takeover during daylight; afterward, the rotating Storms Approaching banner can replay the latest 20-minute loop while the weather event remains active. Actionable NWS, package, family-location, entry-point, Phyn, and low-hot-water slides open a shared short-lived detail surface; the family map centers only the person named by the tapped slide and shows that person's prior 24-hour trail, while a closed Phyn main valve can be restored only from its detail view after explicit confirmation. The ambient wall remains in place after sunset. True idle panel-off remains disabled until the Crown LineageOS device has a reliable motion-wake input. Its device schedule changes the Home Assistant theme between light at 07:00 and dark at 19:00. Other clients follow their own system preference.
Kitchen's native Kiosk Satellite Garage and Front Door overlays use imported Home Assistant camera entities, with HLS preferred over WebRTC on the Fire/WebView-class Kitchen Show display. Driveway alerts use the same live Home Assistant camera through the dashboard because Driveway is not configured as a native Kiosk Satellite shortcut.
How it is wired into Home Assistant
This folder is referenced from config/configuration.yaml via:
lovelace.resource_mode: yamllovelace.resources: !include dashboards/resources.yamllovelace.dashboards: ...frontend.themes: !include_dir_merge_named themesloads the tablet palettes; the Kitchen Show uses the fixed-dark theme while the Bedroom Lovelace view can still follow client light/dark mode.- Default Overview YAML dashboard:
lovelace.dashboards.lovelace.filename: ui-lovelace.yaml - Additional YAML dashboards:
filename: dashboards/<dashboard>/dashboard.yaml dashboard-bedroomis the canonical Bedroom desktop-review and future-hardware route; it is hidden from the sidebar and linked from the Bedroom Tablet snapshot on Systems' Kiosks tab. The current Android 5 Fire uses the equivalent lightweight renderer underwww/.dashboard-kiosk-satellite-stagingis the hidden validation surface for the shared Kiosk Satellite camera view.- Systems' visible Kiosks tab sits immediately before Joanna and combines attention telemetry with the latest Bedroom Tablet and Kitchen Show screenshots; tapping either snapshot opens that display's live dashboard.
- The Systems Joanna page links to BearClaw Admin from Dispatch Trend and to a hidden AI Diagnostics subview that shows the latest OpenAI instructions and response together; LLM Vision production diagnostics and retired QMD health telemetry are not shown.
- Overview's second visible view is Mobile, a phone-first quick-control surface for garage doors, the front-door lock, thermostats, and compact household alerts.
- Overview Home uses ordered production sections under
overview/sections/; approved pilot edits now apply directly there. - Overview Home's Windows ribbon opens a dedicated GPIO entry-point subview with perimeter, MQTT, and individual contact status.
dashboard-infrastructureis presented as Systems while retaining its stable URL; it owns Home Water, Vacuum, Car telemetry and JuicePassProxy safety status, network, compute, storage, UPS power, and service drill-downs, including hidden WAN/Pi-hole/website detail views.
- Default Overview YAML dashboard:
Note:
- Do not use legacy
lovelace.mode: yaml(removed in Home Assistant 2026.8).
Lovelace resources are loaded from:
config/dashboards/resources.yaml(referenced bylovelace.resources)
Migration / Cutover Notes
- During migration you may have both storage dashboards (from the UI) and YAML dashboards (from this folder) at the same time.
- Do not try to create YAML dashboards with the same dashboard ID/key as an existing storage dashboard; remove/disable the storage version first in the UI.
- Once you confirm the YAML dashboards render correctly:
- Hide or delete the old storage dashboards in Settings -> Dashboards.
- Keep strategies/dynamic dashboards in storage (Map, Areas, etc.) unless you intentionally export them.
Conventions
- Include paths in Lovelace YAML should use absolute container paths starting with
/config/.- Example:
!include /config/dashboards/overview/partials/some_cards.yaml
- Example:
- Views are loaded using
!include_dir_listand ordered by filename (prefix with01_,02_, etc.). - Systems views are desktop-first and dense by default: use
type: sections,max_columns: 4, anddense_section_placement: trueon every standard view.- Use responsive
layout-cardgrids withmin-contentrows inside full-width section wrappers so panels pack tightly without fixed-height gaps. - Keep related panels similar in height, avoid spacer cards, and verify both desktop and single-column mobile layouts.
- Keep WAN telemetry, compact dual Pi-hole controls, and current website health together on the Network view; reserve hidden subviews for detailed Pi-hole analytics and domain/monitor telemetry.
- Use primary KPI tiles as the canonical drill-down entry point instead of repeating navigation rows at the bottom of a view.
- Treat NAS long-term statistics as the Docker capacity source of truth; keep host cleanup controls in full-width, single-column maintenance popups.
- Use responsive
- Major Overview redesigns use a hidden
-stagingdashboard for review and keep production view paths unchanged until explicit promotion approval. - Overview is the daily home page: preserve people, climate, lighting, cameras, weather, and frequently used controls while bubbling up a compact mix of actionable system state and key household context.
- Home Water and Vacuum live under Systems; personal Health remains under Overview. Detailed Salt Trends, Sprinklers, and Vacuum Map views are Systems subviews.
- Prefer card-native styling; treat
card_modas a last resort. - Prefer CSS variables (
var(--*)) over hardcoded hex colors. - When using the Stitch MCP for inspiration, generation may exceed the tool timeout; wait and then fetch results via
stitch/list_screensandstitch/get_screen.
Notes
- Do not edit
config/.storageby hand. Export once, then maintain the YAML files here. - It is safe to restart Home Assistant after dashboard changes as long as a configuration check passes first.
All of my configuration files are tested against the most stable version of home-assistant.
