V0.3 · EARLY ACCESS

Boot your fleet from anywhere on earth.

Wake on WAN lets you power on any machine — desktop, homelab rack, office workstation — from your phone, a browser tab, or a scheduled job. Live fleet state, zero router surgery.

No port forwarding
Works on any LAN
macOS · Linux · Windows
<1s
Wake target · LAN-side
0×
Router changes needed
1
Static binary · agent
4
Supported platforms
§ 01 · How it works

Three parts. One packet.

A tiny agent on your LAN. A control plane you talk to from anywhere. A magic packet that lands on your sleeping machine in under a second.

STEP 01

Drop the agent on your LAN

One static Go binary on any always-on device — Raspberry Pi, NAS, router. It opens a single outbound connection to the control plane and waits.

agent · outbound-only · WebSocket
STEP 02
RPC

Connect from anywhere

Phone, laptop, CI runner, shell script. Each client opens a persistent RPC channel to the control plane and subscribes to the hosts it cares about.

client ↔ control plane · bidir RPC · livequeries
STEP 03

Wake in milliseconds

Send a wake RPC. The agent on the target LAN broadcasts the magic packet. Live-state updates stream back so you see the host come up in real time.

rpc.wake() → magic packet · livequery updates
§ 02 · Features

Everything the homelab deserved.

Built by people who got tired of yak-shaving router configs every time they wanted to wake a machine.

No port forwarding

The agent makes a single outbound WebSocket connection. Your router stays untouched. ISPs with CGNAT? Works the same.

Live fleet state

Livequeries push every host transition — asleep, waking, online, dropped — to your dashboard as it happens. No polling.

ROADMAP

Single-binary agent

One static Go binary for the LAN side. Install as a service on Linux, macOS, or Windows. A full user-facing CLI for multi-host orchestration is on the roadmap.

ROADMAP

Mobile apps

Native iOS + Android apps with tap-to-wake and home-screen widgets. On the roadmap — the web dashboard is mobile-friendly in the meantime.

Scheduled wakes

"Boot the build server at 07:00 weekdays." Cron syntax, timezone-aware, durable timers — survives restarts of the control plane.

Teams & workspaces

Organizations with member invitations, pending-invite tracking, and accept/reject flows. Per-host roles, per-wake audit log, and SSO (SAML, Google) are on the roadmap.

ROADMAP

Webhooks & API

React to state changes. Trigger a CI job when the build box comes online. Public webhooks and a scriptable HTTP API are on the roadmap.

Works with ancient hardware

If your NIC speaks WoL (and it does — it's been standard since 1998), Wake on WAN will boot it. No driver games.

Self-hostable agent

The agent is a single Go binary. Pin a specific version, run it in an air-gapped lab if you must.

§ 03 · Terminal-first

Built for engineers.

The agent is a static binary you run as a service on your LAN. A full user-facing CLI for multi-host orchestration is on the roadmap.

▸ DEPLOY THE AGENT
$ docker compose up -d
✓ compose pulled from app
✓ agent registered wow1_...
✓ connected to control plane
▸ LIVE STATE (INTERNAL)
sql> LIVE SELECT * FROM device;
nas-01 online updated now
media-pc asleep 22m ago
gpu-rig waking → online
▸ SCHEDULE A WAKE
$ cron: 0 7 * * 1-5
weekdays 07:00 · Europe/Berlin
durable timer · survives restarts
✓ build-server
▸ USER CLI ROADMAP
$ wow wake lab-desktop
# multi-host · tag-based · JSON
# on the roadmap
# today: dashboard + schedules
§ 04 · Who uses it

From one Pi in a closet to fleets of 200.

Built for the homelab, taken seriously by the office.

01 · HOMELAB

The 3am SSH

Your GPU rig lives under the stairs. You live abroad. It's asleep 23h a day. One tap on your phone and it's ready when you SSH in.

↳ The original use case
02 · REMOTE DEV

Workstation on demand

Your work desktop has the RAM and the GPUs. You're on your MacBook at a café. Wake it, mosh in, close laptop when done.

↳ Cheaper than a cloud GPU
03 · SMALL OFFICE

Green IT, actually

Fleet of 40 desks. Half in on any given day. Schedule wake-on-arrival, sleep-on-idle. Power bill drops, morning queues don't.

↳ Less morning boot queue
04 · CI / CD
ROADMAP

Build farms on a budget

Self-hosted runners don't need to idle. Schedule a wake at build-queue time, run the job, sleep. Webhook triggers from git providers on the roadmap.

↳ Webhooks on the roadmap
§ 05 · Under the hood

Honest engineering. No magic.

We don't use WireGuard, overlay networks, or any of the usual suspects. A live database speaks RPC. Agents subscribe. It's simpler than you think.

01 · CLIENT

You

cli · app · web · webhook

02 · CONTROL PLANE

SurrealDB

livequeries + rpc
fleet state · auth · audit

03 · AGENT

Your LAN

outbound WebSocket
subscribes to wake rpc

04 · TARGET

Your machine

WoL magic packet
broadcast · unicast · directed

Bidirectional RPC over a single persistent WebSocket
SurrealDB livequeries push state deltas as they happen
No inbound ports, no VPN, no NAT traversal tricks
Agent is a static Go binary — no VM, no runtime
§ 07 · Pricing

Free for a single Pi. Fair for a fleet.

Pay for the work you're doing, not the seats you're not.

STARTER
Free
For the Raspberry Pi under your desk. No card, no ads.
  • 1 user
  • 1 computer
  • Scheduled wakes
Start free
BUSINESS
ROADMAP
€60/ month
For small offices, studios, and engineering teams.
  • 10 users, 25 computers
  • +€4 / extra user
  • +€2.50 / extra computer
  • Audit log
  • Priority support
Talk to us
ENTERPRISE
ROADMAP
Custom
For organizations that need their own control plane.
  • Unlimited users & computers
  • SSO / SAML
  • SLA + dedicated support
  • Self-hosted control plane
Talk to us

Early access: Starter + Pro check out today. Business and Enterprise are on the roadmap.

§ 08 · FAQ

Before you ask.

Do I need to forward any ports on my router?
No. The agent makes a single outbound WebSocket connection to the control plane — the same kind of connection your browser makes when loading this page. Works behind CGNAT, double NAT, IPv6-only, and every other network weirdness we've tested.
How is this different from Tailscale or ZeroTier?
Those are general-purpose mesh VPNs — great products for a different problem. Wake on WAN is purpose-built for one job: getting a magic packet onto your LAN. No overlay network, no new IP range to manage. Just the minimum primitive for remote boot.
What does the architecture actually look like?
A persistent RPC channel over WebSocket connects clients and agents to a SurrealDB control plane. Livequeries push state deltas (asleepwakingonline) to every subscribed client in real time. When you send a wake, the agent on the target LAN broadcasts the magic packet. It's a database doing its job.
Does it work with my crusty 2011 ThinkPad?
Almost certainly yes. Wake-on-LAN has been a standard NIC feature since 1998. You just need to enable it in BIOS/UEFI and the OS (ethtool -s eth0 wol g on Linux, checkbox in Device Manager on Windows).
Is it open source?
Not today. Both the agent and the control plane are closed-source during early access. Opening the agent is on the roadmap.
What happens if the control plane goes down?
Agents cache their state locally and retry. Active livequery subscriptions reconnect automatically when the plane comes back. We're in early access on a single region — multi-region and a public status page are on the roadmap. No status page is ever more honest than your agent's reconnect loop.
Can I trigger wakes from a script or CI job?
Today: wakes run from the dashboard, from scheduled jobs, or from the agent itself. A scriptable HTTP API and webhook triggers from git providers are on the roadmap.

Your machines are asleep.
Let's fix that.

Free on Starter: 1 user, 1 computer, no card required.