You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/DOCKER_HOME_ASSISTANT_ADDON.md
+21-9Lines changed: 21 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -49,19 +49,21 @@ If those are unset, Navet falls back to manual setup in the UI.
49
49
### Local Run Example
50
50
51
51
```bash
52
-
docker compose up --build
52
+
docker compose pull
53
+
docker compose up -d
53
54
```
54
55
55
56
Then open `http://localhost:8080`.
56
57
57
58
### Release Pipeline
58
59
59
-
The GitHub Actions publish workflow is manual for private-repo use. It publishes a multi-arch image to GitHub Container Registry:
60
+
The GitHub Actions publish workflow publishes a multi-arch image to GitHub Container Registry on pushes to `main`, and it can also be run manually:
60
61
61
-
-`ghcr.io/<owner>/navet:<version>`
62
+
-`ghcr.io/<owner>/navet:main`
63
+
-`ghcr.io/<owner>/navet:sha-<commit>`
62
64
-`ghcr.io/<owner>/navet:latest`
63
65
64
-
Run it from the GitHub Actions UI and provide a version string such as `0.1.0-private.1`.
66
+
Manual dispatch can still publish an additional version tag such as `0.1.0-private.1`.
65
67
66
68
### Private GHCR Deployment
67
69
@@ -128,10 +130,9 @@ For private Home Assistant development:
128
130
129
131
For standalone Docker users:
130
132
131
-
1. Open the `Publish` workflow in GitHub Actions
132
-
2. Enter a version like `0.1.0-private.1`
133
-
3. Run the workflow
134
-
4. Pull the updated image from GHCR on your deployment host
133
+
1. Push changes to `main` or run the `Publish` workflow manually
134
+
2. Pull the updated image from GHCR on your deployment host
135
+
3. Restart the container with `docker compose up -d`
135
136
136
137
## Runtime Config Resolution
137
138
@@ -141,6 +142,16 @@ The app resolves Home Assistant defaults in this order:
141
142
2. Runtime `window.__NAVET_CONFIG__` from `/config.js`
142
143
3. Build-time `import.meta.env.NAVET_HASS_URL` and `import.meta.env.NAVET_HASS_TOKEN`
143
144
145
+
## Current Performance Work
146
+
147
+
The current dashboard build includes a few runtime-focused optimizations:
148
+
149
+
- Lazy-loaded settings, add-card dialog, widgets, and media dialog
150
+
- Deferred rendering for offscreen room groups in the All view
151
+
- Zustand-backed search result state to reduce context fan-out
152
+
- Stable device-map reuse to avoid rerendering unchanged cards
153
+
- Optional no-animation mode for slower devices such as Raspberry Pi deployments
154
+
144
155
## Remaining Limitation
145
156
146
157
The current add-on still expects explicit Home Assistant connection details. It does not yet use Supervisor-native authentication or automatically derive a user-scoped Home Assistant session.
@@ -159,7 +170,7 @@ If you are the only consumer right now:
159
170
160
171
1. Keep the repo private
161
172
2. Use local add-on installs for Home Assistant testing
162
-
3.Use the manual GHCR publish workflow for remote Docker deployments
173
+
3.Let pushes to `main` publish the GHCR image for remote Docker deployments
163
174
4. Move to tag-based or public releases only when you are ready to distribute the project
164
175
165
176
## Notes Specific to This Repo
@@ -168,6 +179,7 @@ If you are the only consumer right now:
168
179
- That only affects development and does not block Docker packaging
169
180
-`index.html` now loads `/config.js` before the app bootstraps
170
181
- Home Assistant credentials are still persisted in browser storage after login
182
+
- Development builds log slow dashboard renders with `[Navet][RenderProfiler]`
0 commit comments