Home Assistant

Open source home automation that puts local control first

Automation & Workflow Apache-2.0 intermediate ★ 91,229 stars

What is Home Assistant?

Home Assistant is a home automation platform that runs on your own hardware. It integrates thousands of smart home devices locally, so automations keep working without cloud outages and your usage data never leaves your network.

Best for

Smart home owners who want local control and no cloud dependency

Why choose Home Assistant

Home Assistant is the only serious answer to a smart home that has stopped being smart. Once you own devices from several brands, the apps multiply, the routines stop talking to each other and everything depends on someone else's cloud server being online. Home Assistant speaks to thousands of devices locally, runs your automations on your own machine, and keeps working when the internet does not. It turns a pile of gadgets into one system you control, and it is the reason many people start self-hosting at all.

Replaces

  • Samsung SmartThings
  • Amazon Alexa routines
  • Google Home

Key features

  • 2000+ device integrations
  • Local automation engine
  • Dashboards and mobile apps
  • Voice assistant integrations

What to watch out for

The learning curve is the cost of that power. Configuration is deep, the terminology is unfamiliar, and the honest truth is that a first setup involves a weekend of reading. Not every device plays nicely: some brands need cloud integrations that break on the vendor's schedule, and the automations you write can be subtle — a rule that fires at the wrong time is worse than no rule. It also becomes load-bearing infrastructure that your household depends on, which raises the stakes of any change you make.

How to deploy

  • Docker
  • Home Assistant OS
  • Python venv

Getting started

Start with two or three devices in one room rather than attempting the whole house; you will learn the model far faster with a small, low-stakes scope. Prefer local integrations over cloud ones whenever both exist, since they keep working during outages. Set up automatic backups to somewhere off the device before you build automations you rely on, and take a snapshot before every update. Add integrations one at a time and read the entity names as you go, because automations are only as good as your naming conventions.

Typical setup

The canonical build is a dedicated mini PC or single-board computer in a cupboard, running the operating system image with a Zigbee or Z-Wave stick attached, so devices talk to it locally rather than through vendor clouds. Add-ons run alongside it: a database for history, a reverse proxy for remote access, and an automation for backups to another machine. Households often keep the important automations — heating, lighting, alarms — deliberately simple, since reliability matters more than cleverness once a family depends on them.

Who should look elsewhere

Not the right choice for someone who wants smart devices that simply work and never require attention. The reality is weekend setup, occasional breakage when a vendor changes an integration, and automations that misbehave. If any of that sounds like a chore rather than a hobby, a mainstream hub will produce far less frustration for far less effort.

Project health

  • GitHub stars: 91,229
  • Last code push: 2026-10-01
  • Open issues: 3,587
  • Status: actively developed

Figures pulled from the GitHub API and refreshed periodically.

More in Automation & Workflow