You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Carlo Costanzo fae13fa0ef
Adjust Tesla tire pressure alert threshold
1 week ago
..
bedroom Show driveway alerts on household kiosks 2 weeks ago
infrastructure Adjust Tesla tire pressure alert threshold 1 week ago
kiosk feat: add purpose-built bedroom and kitchen kiosks 2 months ago
kiosk_satellite_staging Show driveway alerts on household kiosks 2 weeks ago
overview Restore 24-hour family map history 2 weeks ago
shared Add YAML dashboards and enable Lovelace YAML mode 8 months ago
README.md Update Home Assistant references for 2026.9.2 2 weeks ago
SCRATCHPAD.md Dashboards: HA 2026.8 Lovelace wiring + validation 8 months ago
resources.yaml feat(kiosk): add contextual event detail views 2 months ago

README.md

Bear Stone Smart Home
Bear Stone Smart Home Documentation

Be sure to ⭐ my configuration repo so you can keep up to date on any daily progress!

X Follow YouTube Subscribe GitHub Stars
HA Version Badge Last Commit Commit Activity

Dashboards (Lovelace YAML)

This folder holds YAML-managed Home Assistant Lovelace dashboards and UI resources.

Walkthrough

  • Mobile quick-access video: Watch on YouTube
  • Mobile quick-access companion post: vCloudInfo Blog Post
  • Video: Watch on YouTube
  • Companion post: vCloudInfo Blog Post
  • Kiosk camera tablet video: Watch on YouTube

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: yaml is enabled.
  • SCRATCHPAD.md
    • Parking lot for multi-step dashboard work and patterns.
  • <dashboard>/
    • One folder per dashboard (example: overview/, infrastructure/, kiosk/).
    • dashboard.yaml is the dashboard entrypoint.
    • views/ contains one YAML file per view.
    • partials/ is reusable card lists included into views.
    • popups/ is reusable standalone popup cards (typically bubble-card) included into views.
    • card_mod/ is CSS overrides (use only when card-native options are insufficient).
  • 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: YAML source: kiosk_tablet
  • Bedroom dashboard: YAML source: dashboard
  • Bedroom landscape view: YAML source: 01_home
  • Android 5 fixed-dark renderer: HTML source: bedroom-kiosk
  • Kiosk Satellite preview: YAML source: dashboard
  • Kitchen tablet view: YAML source: 01_home
  • Automatic day/night theme: YAML source: kiosk_satellite

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: yaml
  • lovelace.resources: !include dashboards/resources.yaml
  • lovelace.dashboards: ...
  • frontend.themes: !include_dir_merge_named themes loads 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-bedroom is 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 under www/.
    • dashboard-kiosk-satellite-staging is 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-infrastructure is 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.

Note:

  • Do not use legacy lovelace.mode: yaml (removed in Home Assistant 2026.8).

Lovelace resources are loaded from:

  • config/dashboards/resources.yaml (referenced by lovelace.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
  • Views are loaded using !include_dir_list and ordered by filename (prefix with 01_, 02_, etc.).
  • Systems views are desktop-first and dense by default: use type: sections, max_columns: 4, and dense_section_placement: true on every standard view.
    • Use responsive layout-card grids with min-content rows 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.
  • Major Overview redesigns use a hidden -staging dashboard 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_mod as 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_screens and stitch/get_screen.

Notes

  • Do not edit config/.storage by 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.

Still have questions on my Config?
Message me on X : Follow CCostan

Buy me a coffeeYou can buy me a coffeeBuy me a coffee

Affiliate Disclosure

Powered by TurnKey Linux.