https://github.com/oyvhov/tunet
Tunet Dashboard for Home Assistant with real-time cards, drag-and-drop layout, and an integrated Hass.io add-on.
https://github.com/oyvhov/tunet
dashboard docker hassio-addon home-assistant react smarthome vite websocket
Last synced: about 2 months ago
JSON representation
Tunet Dashboard for Home Assistant with real-time cards, drag-and-drop layout, and an integrated Hass.io add-on.
- Host: GitHub
- URL: https://github.com/oyvhov/tunet
- Owner: oyvhov
- License: gpl-3.0
- Created: 2026-01-19T17:18:03.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-04-29T21:59:53.000Z (about 2 months ago)
- Last Synced: 2026-04-29T23:36:21.074Z (about 2 months ago)
- Topics: dashboard, docker, hassio-addon, home-assistant, react, smarthome, vite, websocket
- Language: JavaScript
- Homepage:
- Size: 8.82 MB
- Stars: 280
- Watchers: 7
- Forks: 31
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
ο»Ώ# Tunet Dashboard
A modern React dashboard for Home Assistant with real-time entity control, energy monitoring, and multi-device profile sync.

## Features
### π΄ Cards
- **Universal Sensor Card**: One card to rule them all. Handles numeric sensors (with history graphs), binary sensors (doors, windows, motion), switches, input booleans, scripts, and scenes.
- **Specialized Control Cards**:
- **Alarm** (BETA): Arm/disarm with mode selection, PIN-protected actions, and quick-action keypad.
- **Light**: Brightness, color (RGB/temp), and toggle limits.
- **Climate**: Thermostat modes, target temperature, and HVAC action feedback.
- **Media**: Generic media players + dedicated **Android TV** remote with app launching.
- Playlist browsing requires a **Music Assistant** `media_player`.
- Sonos Favorites browsing requires a **Sonos** `media_player`.
- **Cover**: Position sliders for blinds and toggle controls for garage doors.
- **Vacuum**: State monitoring, start/pause/dock commands.
- **Fan**: Speed percentage, oscillation, and direction controls.
- **Energy & Environment**:
- **Nordpool**: Hourly electricity prices with beautiful trend graphs.
- **Energy Cost**: Track daily and monthly energy expenditure.
- **Weather**: Dynamic weather animations, current temperature, and forecasts.
- **Car**: EV monitoring (battery, range, charging status).
- **Productivity & Organization**:
- **Calendar**: Agenda view for upcoming events.
- **Todo Lists**: Manage Home Assistant to-do items.
- **Room Card**: Compact summary of a room's state (lights, temp, occupancy).
- **Person**: Presence detection and location tracking.
### π Advanced Capabilities
- **Server-side Profiles + Deploy**: Save layout configurations per user, load on any device, and publish/deploy current settings to selected devices.
- **Validated Backend Auth**: Protected profile/settings API calls are verified against the authenticated Home Assistant user, not just browser-side state.
- **Conflict-safe Settings Sync**: Multi-device settings updates use revision-aware sync to prevent stale tabs from overwriting newer layouts.
- **Optional Data-at-Rest Encryption**: Encrypt server-stored profiles/settings with migration-safe compatibility modes.
- **Persistent OAuth Session Reuse**: Browser-stored OAuth sessions can survive reloads and same-browser tab handoff while backend API calls continue to validate against Home Assistant.
- **Dashboard Import/Export**: Portable JSON backup/restore directly from Profiles.
- **Live Updates**: Instant state reflection via Home Assistant WebSocket.
- **Drag-and-Drop Grid**: Fully customizable masonry layout.
- **Settings Lock**: PIN protection prevents accidental edits.
- **Theming**: Dark/Light modes with high-end glassmorphism and animated backgrounds.
- **Multi-language**: Native support for English, German, Norwegian (NB/NN), Swedish, and Simplified Chinese.
## Quick Start
### Home Assistant Add-on
1. Go to **Settings** -> **Add-ons** -> **Add-on Store** -> **Repositories** (three dots).
2. Add `https://github.com/oyvhov/tunet`.
3. Install **Tunet Dashboard**.
4. Configure and Start.
### Docker Compose (Recommended)
```bash
git clone https://github.com/oyvhov/tunet.git
cd tunet
docker compose up -d
```
Open `http://localhost:3002` and connect your Home Assistant instance.
### Local Development
```bash
git clone https://github.com/oyvhov/tunet.git
cd tunet
npm install
npm run dev:all
```
- Frontend: `http://localhost:5173`
- Backend API: `http://localhost:3002/api`
## Updating
See [SETUP.md](SETUP.md) for detailed setup, configuration, and troubleshooting.
See [CARD_OPTIONS.md](CARD_OPTIONS.md) for card-by-card options and screenshots.
See [CSS_VARIABLES.md](src/docs/CSS_VARIABLES.md) for theme token naming and usage.
## Technologies
- React 18 + Vite 7
- Tailwind CSS 4
- Express + SQLite (profile storage)
- Home Assistant WebSocket API
- Lucide Icons + MDI
## πΊοΈ Roadmap
See our [ROADMAP.md](ROADMAP.md) for planned features and future development.
## License
GNU General Public License v3.0 β See [LICENSE](LICENSE)
## Author
[oyvhov](https://github.com/oyvhov)