Native Shell
Native Shell: AI-generated UI, native in your app, on every platform. Apps on iOS, Android, macOS, Windows and Linux, GPUI apps and web pages load signed, sandboxed TSX modules at run time and draw th
Put your Home Assistant devices on your own floorplan, then see them live on your dashboard.
Translation pending
Developer toolsJavaScript · PythonGitHub @JohnKotrolosOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Place your Home Assistant devices on your own floorplan, with an interactive dashboard card and live overlays. Currently in beta.
Taken from the repository README
Loading the full README.
Read the full README ↗Put your Home Assistant devices on your own floorplan image and watch your home live: lights glowing in their real colour and staying in their room, the plan darkening at night, AC air flow, people in their rooms, an interactive Zigbee map (ZHA) and much more. Things that usually take custom cards, templates and lots of YAML, done with clicks: upload your picture (or start from a sample plan), drag your rooms onto it, press Auto-place and fine-tune by dragging.
📖 Full guide: https://johnkotrolos.github.io/ha-device-floorplan/
🎮 Live demo: https://johnkotrolos.github.io/ha-device-floorplan/demo/
Device Floorplan is in beta. It runs every day in a real home with ~90 devices, but your setup is different from mine, and that's exactly where your feedback helps. Please open an issue for anything that breaks, confuses you or is missing. Screenshots help a lot.
Known limits today:
No floorplan yet? See Turn your sketch into a floorplan in 10 minutes.
config/www, stays linked, a backup copy is kept), or start from
one of seven bundled sample plans.custom:device-floorplan-card with live overlays, several floors,
a night look with glowing lights, people in their rooms, and a companion
chip card for your top bar.From the Marketplace (Home Assistant 2026.11 and later, recommended)
https://github.com/JohnKotrolos/ha-device-floorplan (the first time,
Home Assistant asks you to sign in to GitHub, read-only).An install made with HACS moves to the Marketplace by itself.
With HACS (Home Assistant before 2026.11): HACS → ⋮ → Custom repositories → the link above, type Integration → find Device Floorplan → Download → restart Home Assistant.
Manually: copy custom_components/device_floorplan from the
latest release
into your config/custom_components/ folder and restart Home Assistant.
Then:
Options (Settings → Devices & services → Device Floorplan → Configure): new-device notification and automatic placement, both on by default.
Each plan is a device (“Ground floor plan”) under Settings → Devices with:
image.device_floorplan_<plan>: the plan picture, usable in any card.sensor.device_floorplan_<plan>: state = number of devices on the plan;
attributes (kept out of the history database): plan_id, image_url,
image_fallback_url, image_width, image_height, kind, floor_id,
level, image_type, metres_per_px_x/y, real_width_m, real_height_m,
approx_count, devices
({device_id: {name, x, y, px, py, approx, z?, ieee?, mac?, via?, main_entity, entities, roles, conns, group, box?, light?, parts?}},
x/y in % of the image; all entities of a device share its position),
entities (helpers / entities without a device placed on their own), bonds, phantoms,
zigbee_devices (the format of the Zigbee Floorplan Card) and areas (room pins).sensor.device_floorplan_new_devices: devices added since setup that are not
placed or skipped yet.
Action:
action: device_floorplan.get_positions
data:
plan: ground_floor
response_variable: plan
A floorplan with device positions is a map of your home, so plan images are
only served to logged-in users (/api/device_floorplan/image/…, the
frontend uses signed URLs). They are stored in config/device_floorplan/.
Images you link from config/www stay public at /local/…, as everything in
that folder. Planner data lives in .storage/device_floorplan.
The easiest way: press I'm ready → Add to dashboard in the Floorplan Editor. The card shows
your plan and its overlay buttons: Plan · Live · Lights · Comfort · Security · Network · Health,
People, plus your own. Tap a light to switch it, a cover for its controls, a reading for its
last 24 hours; hold for the details. Several floors get a floor rail next to the plan. At night
the plan darkens and the lights that are on glow (follows the sun by default).
Everything else (floors, which overlays, where the buttons are, what each overlay shows, light
scenes, rooms, people, day & night, tap behaviour, look, per-device settings) is set in the card
editor. Other cards can switch the overlay with the action device_floorplan.show_overlay, or use
the chip card that glows for the active overlay. See the card reference.
type: custom:device-floorplan-card
plans: [ground_floor, first_floor]
| Key | Action |
|---|---|
| Esc | Stop placing / measuring, cancel a drag, close menus and panels |
| Ctrl/Cmd+Z, Ctrl/Cmd+Shift+Z (or Ctrl+Y) | Undo, redo |
| Delete / Backspace | Remove the selected device (or the selected measurement) |
| Arrow keys (Shift = bigger steps) | Nudge the selected device |
| Shift while measuring | Don't snap the line straight |
Shortcuts don't fire while you type in a field.
zigbee_devices above can feed it.Next: polishing from your feedback, people on several floors, light pools in more overlays. Later: motion zones that fade, doors and covers drawn, a coverage map, Zigbee2MQTT topology. Ideas welcome as issues with the label idea. Full list: roadmap.
device_floorplan_new_device event lets you
build your own alerts (a blueprint for phone notifications is included).
Devices removed from HA show as a ? marker: remove them, or give the spot
to another device.