Control lights, heating, sensors and plugs from one place, with automations and a voice assistant that stay in your home
On this page
Good to know before you install
Bluetooth devices connect through an ESPHome Bluetooth proxy on your network, not through this server's own Bluetooth.
At a glance#
- What it is
- Smart Home Hub Smart Home
- Where it opens
- Web Interface
On its own port at
http://your-server:port, orhomeassistant.your-domainonce you have a domain - Updates
- Automatic A backup is taken first, and it rolls back if the update fails
- Backups
- Included Part of the daily backup when that's switched on
- Copies
- One per server
- Needs
- Disk space, A home network
There's no step-by-step guide for Home Assistant here yet. Everything below comes straight from the app catalogue, so it's what LibrePortal really does when you install it. For using Home Assistant itself, its own documentation is the place to go: github.com/home-assistant/core.
Addresses and ports#
Home Assistant has one port. LibrePortal picks a free port number for each when you install, so yours will differ from anyone else's. The Config tab's Network section shows them, and the app's Open button uses the right one.
| What it is | Who can reach it | With a domain |
|---|---|---|
| Web Interface | Trusted places only | homeassistant.your-domain |
Settings#
These are Home Assistant's own settings on its Config tab. The settings every app shares, like backups, updates and where its data lives, are explained in App pages and settings.
| Setting | What it does | Starts as |
|---|---|---|
| Notifications to ntfy | Automations can send notifications to your phone through ntfy, on a new topic of their own. | On |
| Uptime Kuma monitors | Each Uptime Kuma monitor becomes a sensor. Makes an API key in Uptime Kuma, "Home Assistant (LibrePortal)". | On |
| AdGuard Home | Ad-blocking statistics, and a switch to pause it. Signs in as AdGuard Home's admin. | On |
| Pi-hole | Ad-blocking statistics, and a switch to pause it. Sets Pi-hole's app password, unless you set one yourself. | On |
| Jellyfin players | Control what plays on Jellyfin. Makes a hidden Jellyfin user, lp-homeassistant. | Off |
| Immich photos | Show your photos on Home Assistant dashboards. Makes an API key in Immich, "Home Assistant (LibrePortal)". | Off |
| Nextcloud | How your Nextcloud is doing, as sensors. Makes an app password for Nextcloud's admin, "Home Assistant (LibrePortal)". | Off |
| Ollama conversation | A local AI model answers in Assist. Uses a model Ollama already has; nothing is downloaded. | Off |
| Mastodon | Automations can post to your Mastodon account. Registers an app on it, "Home Assistant (LibrePortal)". | Off |
In its config file#
A few more aren't on the Config tab yet. They live in the app's config file, described here so you know they exist. How to change them.
| Setting | What it does | Starts as |
|---|---|---|
NameCFG_HOMEASSISTANT_DISPLAY_NAME |
What this app is called on your dashboards. Leave empty to use its usual name | Empty |
Show on the LibrePortal DashboardCFG_HOMEASSISTANT_SHOW_ON_DASHBOARD |
Whether this app gets a shortcut on the front page of the LibrePortal WebUI, separate from any Dashy dashboard Choices: true, false |
true |
Device DiscoveryCFG_HOMEASSISTANT_NETWORK_MODE |
Find devices on your home network by itself, or add them by address Choices: host, bridge |
host |
Detailed logsCFG_HOMEASSISTANT_VERBOSE_LOGS |
Whether Home Assistant writes its normal, chattier logs, including who connected, instead of only warnings and errors. Choices: true, false |
false |
Debug logging for 24 hoursCFG_HOMEASSISTANT_DEBUG_LOGS |
Turn on to see everything Home Assistant is doing while you look for a problem; it turns itself off after 24 hours. Choices: true, false |
false |
Tools#
Home Assistant's Tools tab has 4 buttons for jobs you'd otherwise need a terminal for. Each one runs as a task, so you can watch it on the Tasks page and read what it did. More about Tools.
Makes the owner if there is none, gives LibrePortal a new token if its old one was removed, and opens Home Assistant to your network once it is safe. Safe to run again.
Give the owner a new password, shown on the app's logins. Leave blank to generate one.
Sets Home Assistant's network settings and LibrePortal's pairings again. For when something stopped working after a network change.
Home Assistant's own backup, which it can restore from its own screens. LibrePortal keeps the newest three it made.
Works with#
These are the other apps Home Assistant knows how to work with. Once it's installed, its page shows the same list with whether each one is connected. How this works.
- MQTT: Talks to your devices through Mosquitto. LibrePortal sets this up by itself when both are installed.
- Zigbee devices: Zigbee devices appear in Home Assistant by themselves. There's nothing to switch on; LibrePortal shows whether it can work and lets you check.
- ESPHome boards: Boards you build in ESPHome show up in Home Assistant. There's nothing to switch on; LibrePortal shows whether it can work and lets you check.
- Local voice: Understands and answers you without a cloud. LibrePortal sets this up by itself when both are installed.
- Notifications to ntfy: Automations can send notifications to your phone.
- Uptime Kuma monitors: Shows whether your apps are up, as sensors.
- AdGuard Home: Shows ad-blocking statistics and a switch to pause it.
- Pi-hole: Shows ad-blocking statistics and a switch to pause it.
- Metrics: Prometheus collects Home Assistant's sensor history. LibrePortal sets this up by itself when both are installed.
- Node-RED flows: Build Home Assistant automations as Node-RED flows.
- Jellyfin players: Control what plays on Jellyfin from Home Assistant.
- Immich photos: Show your photos on Home Assistant dashboards.
- Nextcloud: Shows how your Nextcloud is doing.
- Ollama conversation: A local AI model answers your questions in Assist.
- Mastodon: Automations can post to your Mastodon account.
- Email notifications: Automations can send you email. It needs a domain.
- Matrix notifications: Automations can message you on Matrix.
- Grafana: Shows dashboards for the apps that have one. works with every app
- Prometheus: Collects metrics from the apps that can export them. works with every app
- Uptime Kuma: Watches your apps and shows when one goes down. works with every app
Privacy and security#
Worth knowing Home Assistant sends usage statistics only if you opt in, and LibrePortal leaves that off. Some pages load logos from Home Assistant's site, and each integration you add may talk to its own company.
What leaves this server#
- Brand logos load from Home Assistant's site in your browser
- Every integration you add (weather, devices, cloud services) contacts its own provider
- Version information is fetched from Home Assistant's servers
What LibrePortal turns off#
- Detailed logs and per-request access logging (switchable in Config)
- Usage statistics (analytics) stay opted out
Licence: Apache-2.0. Audited: 21 October 2026. See the privacy of every app and the Promise.
Sources#
Under the hood#
- It runs this image:
ghcr.io/home-assistant/home-assistant:2026.9.4@sha256:3e6710a7ab2a61311d9d899b719f6c3657791c63e8f4942cec4ebc42401d6b76. - It can sit behind Authelia's sign-in once Authelia is installed.
- Its own project and documentation: github.com/home-assistant/core
Ports, settings, tools and connections on this page are read from LibrePortal v0.10.97's app catalogue each time the guide is built.