# `mix dev.ui`

Run the gateway UI on the workstation, with code reload, against one device.
Simulated and real gateways are selected the same way:

    mix dev.ui                               # the only gateway found
    mix dev.ui gateway_a                     # a device of the running mix dev simulator
    mix dev.ui nerves_gate@100.101.102.103   # a real gateway, e.g. an EC100 on the tailnet
    mix dev.ui gateway_a --port 4002

Without a target, the task looks for the simulator's devices and for gateways
on the current tailnet, and starts only when it finds exactly one. It reads the
local Tailscale daemon without changing it and never starts or stops simulated
devices. Real gateways need development firmware with the same cookie.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
