Files
ha-dashboard-studio/README.md
T
veenm e39a3d93f7 Dashboard Studio 1.4.0: drag-and-drop dashboards for Home Assistant
A Home Assistant app with its own sidebar tab: free-form grid editor,
live entity widgets (lights, climate, car, calendar, Immich photos,
Afvalwijzer waste collection and more), themes, tabs with a side menu,
kiosk mode and English/Dutch translations.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 22:02:23 +01:00

29 lines
2.0 KiB
Markdown

# Dashboard Studio for Home Assistant
A Home Assistant app (formerly called an add-on) that adds a **Dashboard Studio** tab to the sidebar. In that tab you build dashboards on a free-form grid with drag-and-drop, live entity widgets and full theme control.
## Install
1. In Home Assistant, go to **Settings → Apps → App store**, open the **⋮** menu → **Repositories**, and add `https://git.melvanveen.nl/veenm/ha-dashboard-studio`.
2. Find **Dashboard Studio** in the store, install it, start it, and turn on **Show in sidebar**.
3. Updates appear in the App store automatically whenever the version in `dashboard_studio/config.yaml` goes up.
**Local install, no GitHub:** copy the `dashboard_studio` folder into the `/addons` share of your Home Assistant host (for example with the Samba or SSH app). Then go to **Settings → Apps → App store → ⋮ → Check for updates**. It appears under **Local apps**.
The first build happens on your Home Assistant machine and takes a minute or two.
## How it works
- `dashboard_studio/server/main.py` is a small aiohttp server. It is reachable only through Home Assistant ingress, so only logged-in Home Assistant users can reach it. It stores dashboards in `/data` and relays the Home Assistant websocket API using the Supervisor token. Your browser never needs a long-lived access token.
- `dashboard_studio/web/` is the editor and runtime, written in plain JavaScript with no build step. `widgets.js` contains the widget library. To add a widget type, add an entry there with `fields` and a `render` function.
## Local development
Without a `SUPERVISOR_TOKEN`, the server runs against a built-in mock Home Assistant with fake lights, sensors, a thermostat and other entities:
```bash
pip install aiohttp && python3 dashboard_studio/server/main.py
```
Then open http://localhost:8099. The Photos widget also has fake Immich albums in this mode. To try your real Immich server, set `IMMICH_URL` and `IMMICH_API_KEY` before starting the server.