Skip Platform / Installable Platform

Technology Guide

Home Assistant

License: Apache-2.0

Home Assistant Logo

Field Guide

Complete Guide

Home Assistant is a Python home automation server that runs on your own hardware and talks directly to smart devices over their native protocols instead of routing everything through a vendor cloud. It is usually deployed as Home Assistant OS on a Raspberry Pi, NUC, or VM, and exposes a web UI, REST API, and WebSocket API.

The core is an event bus with a state machine: every device is an entity with a state, and “integrations” (over 2,000 of them) push state updates onto the bus. Automations are triggered by state changes, time, or events, and are authored either in YAML or in the visual editor — both compile down to the same representation. For local device access it ships with add-ons for Zigbee (ZHA, Zigbee2MQTT), Z-Wave JS, Matter, Thread/OpenThread Border Router, and MQTT via Mosquitto. The “Supervisor” architecture runs these add-ons as Docker containers alongside core.

It is the reference project for local-first smart home: automations keep running if your internet drops, device state does not leave the LAN unless you opt into Home Assistant Cloud (Nabu Casa) for remote access and Alexa/Google Assistant bridging. The ESPHome project, which generates firmware for ESP32/ESP8266 sensors that speak Home Assistant’s native API, is maintained by the same organization.

No articles found for Home Assistant yet. Check back soon!