esphome

Install command:
brew install esphome

Make creating custom firmwares for ESP32/ESP8266 super easy

https://esphome.io/

License: MIT

Development: Pull requests

Formula JSON API: /api/formula/esphome.json

Formula code: esphome.rb on GitHub

Bottle (binary package) installation support provided for:

macOS on
Apple Silicon
tahoe
sequoia
sonoma
macOS on
Intel
sonoma
Linux ARM64
x86_64

Current versions:

stable 2026.7.4
head ⚡️ HEAD

Depends on:

certifi 2026.7.22 Mozilla CA bundle for Python
cryptography 50.0.0 Cryptographic recipes and primitives for Python
libyaml 0.2.5 YAML Parser
pillow 12.3.0 Friendly PIL fork (Python Imaging Library)
pydantic 2.13.4 Data validation using Python type hints
python@3.14 3.14.7 Interpreted, interactive, object-oriented programming language

Depends on when building from source:

rust 1.97.1 Safe, concurrent, practical language

Known vulnerabilities in the current version:

GHSA-86qp-5c8j-p5mr (medium) Starlette has missing Host header validation that poisons request.url.path, bypassing path-based ...
GHSA-x746-7m8f-x49c (medium) Starlette: Arbitrary HTTP method dispatched to `HTTPEndpoint` attributes via `getattr`
GHSA-wqp7-x3pw-xc5r (high) Starlette: SSRF and NTLM credential theft via UNC paths in StaticFiles on Windows
GHSA-jp82-jpqv-5vv3 (low) Starlette: Unvalidated request path concatenated into authority poisons request.url.hostname
GHSA-82w8-qh3p-5jfq (high) Starlette: request.form() limits silently ignored for application/x-www-form-urlencoded enable DoS

Data from Homebrew/advisory-database. Run brew vulns esphome for a live check.

Analytics:

30 days90 days365 days
Installs1,6275,66723,642
Installs (--HEAD)21036
Installs on Request1,6275,66723,641
Installs on Request (--HEAD)21036
Build Errors0