# matter-server The **Matter controller for Home Assistant**: matter.js server (`ghcr.io/matter-js/matterjs-server`, **1.4.0**, digest-pinned) on **esh-matter** (CT 111, VLAN 90 only, `10.0.90.20`), with host networking. HA's `matter` integration connects to `ws://10.0.90.20:5580/ws`. - matter.js server is the drop-in successor to python-matter-server (HA has used it since 2026.2), with the same websocket API. - `/data` → `/opt/docker/data/matter-server` (owned by uid 1000, the image's unprivileged user) holds the **fabric root credentials**. It is covered by the CT's vzdump backup. Never commit it. - :5580 is unauthenticated, so the CT firewall admits HA (10.0.50.46) only. - Host requirements (IPv6 RA with route-info, forwarding off) and acceptance results: [`servers/esh-matter/README.md`](../../servers/esh-matter/README.md). Deploy: `scripts/deploy-stack.sh esh-matter matter-server`, then on the host `cp -n .env.example .env && docker compose config -q && docker compose up -d`.