mirror of
https://github.com/home-assistant/frontend.git
synced 2025-04-24 21:37:21 +00:00

* Update ts-eslint * Remove comments * Remove unused ts-ignore * Add undefined generic type instead of unknown * Remove unused undefined type * Fix type issues * Use undefined instead of void for subscribed return type
Home Assistant OS Landingpage
On initial startup of Home Assistant, HAOS needs to download Home Assistant core before the setup can start. In this time the home-assistant/landingpage is serving a "Preparing Home Assistant" page.
Functionality
- Progress bar to show download
- Show / hide supervisor logs
- Links
- Read our Vision
- Join our community
- Download our app
- DNS issue handler
- if the supervisor is not able to connect to the internet
- Show actions to set dns to google or cloudflare to resolve the issue
- Error handler
- if something with the installation goes wrong, we show the logs
Develop
It is similar to the core frontend dev.
- frontend repo is building stuff
- landingpage repo can set the frontend repo path and serve the dev frontend
landingpage dev server
- clone home-assistant/landingpage
- Add frontend repo as mount to your devcontainer config
- please do not commit this changes, you can remove it after initial dev container build, because the build will keep the options as long as you don't rebuild it.
"mounts": ["source=/path/to/hass/frontend,target=/workspaces/frontend,type=bind,consistency=cached"]
- use the dev container
- start the dev server with following optional env vars:
SUPERVISOR_HOST
to have real supervisor data, you can setup a supervisor remote API access and set the host of your supervisor. e.g.:SUPERVISOR_HOST=192.168.0.20:8888
SUPERVISOR_TOKEN
the supervisor api token you get from the Remote API proxy Addon LogsFRONTEND_PATH
the path inside your container should be/workspaces/frontend
- example:
SUPERVISOR_TOKEN=abc123 SUPERVISOR_HOST=192.168.0.20:8888 FRONTEND_PATH=/workspaces/frontend go run main.go http.go mdns.go
- You can also add this into your devcontainer settings, but then it's not so flexible to change if you want to test something else.
frontend dev server
- install all dependencies
- run
landing-page/script/develop