{
  "$meta": {
    "locale": "en",
    "label": "English",
    "dir": "ltr",
    "note": "Every user-visible string on the site lives in this file. Brand strings are never written out — they are interpolated from shared/brand.js via brand tokens, and prices via price tokens. Inline markup is a deliberately tiny subset: bold, italic, code and links, in the syntax documented in js/copy.js. Anything else is rendered as plain text."
  },

  "meta": {
    "title": "{{brand.name}} — wake your PC from anywhere",
    "description": "A tiny always-on Wi-Fi dongle that wakes your sleeping PC from anywhere. No port forwarding, nothing exposed inbound, and no second computer left switched on. Open firmware, self-hostable relay, about half a watt.",
    "ogTitle": "{{brand.name}} — wake your PC from anywhere",
    "ogDescription": "Wake-on-LAN needs something inside your network to send the packet. Today that is usually a PC left switched on. This is a £{{price.kit}} dongle that draws half a watt instead."
  },

  "skipLink": "Skip to main content",

  "nav": {
    "brandSuffix": "",
    "problem": "The problem",
    "how": "How it works",
    "compare": "Compare",
    "checker": "Will it work?",
    "pricing": "Pricing",
    "faq": "FAQ",
    "docs": "Docs",
    "cta": "Get the kit",
    "menu": "Menu",
    "menuOpen": "Open navigation",
    "menuClose": "Close navigation",
    "theme": "Switch between light and dark theme",
    "themeDark": "Dark",
    "themeLight": "Light"
  },

  "hero": {
    "eyebrow": "Wake-on-LAN, without the always-on PC",
    "title": "Wake your PC from anywhere. Nothing left running. Nothing forwarded.",
    "sub": "A Raspberry Pi Pico 2 W in a snap case, plugged in near your router. It holds an outbound TLS connection to our relay, so there is nothing to port-forward and nothing exposed inbound — and when you tap Wake it broadcasts the magic packet on your LAN.",
    "ctaPrimary": "See the kit — £{{price.kit}}",
    "ctaPrimaryAvailable": "Buy the kit — £{{price.kit}}",
    "ctaSecondary": "Build it free",
    "ctaSecondaryNote": "Firmware, case and relay are in the repo",
    "trust": [
      "Raspberry Pi Pico 2 W",
      "Open source",
      "No port forwarding",
      "Works with Alexa and Google",
      "About 0.5 W"
    ]
  },

  "stats": {
    "note": "Every figure here is a property of the device or the licence, measured or checked. We have not launched, so we are not going to print a user count.",
    "items": [
      {
        "value": 0.5,
        "decimals": 1,
        "unit": " W",
        "label": "Idle draw",
        "detail": "Measured at the wall on a Pico 2 W holding an idle relay connection. About 1 kWh a year."
      },
      {
        "value": 1.1,
        "decimals": 2,
        "prefix": "£",
        "label": "A year of electricity",
        "detail": "4.4 kWh at 25p per kWh. A desktop left idling instead costs roughly £90 to £200 a year."
      },
      {
        "value": 0,
        "label": "Ports forwarded",
        "detail": "The connection is outbound only. Nothing on your network is reachable from the internet because of this device."
      },
      {
        "value": 2,
        "label": "Open licences",
        "detail": "MIT for the firmware, case and tools. AGPL-3.0 for the reference relay."
      }
    ]
  },

  "problem": {
    "eyebrow": "Why this needs a device at all",
    "title": "A magic packet cannot cross the internet",
    "lead": "This is the whole problem, and it is worth thirty seconds because it explains every product in this category, including ours.",
    "points": [
      {
        "title": "Wake-on-LAN is a LAN broadcast",
        "body": "A magic packet is a UDP broadcast addressed to the whole local segment. Routers do not forward broadcasts, and no ISP will carry one to your house. There is no version of this that works purely from the cloud."
      },
      {
        "title": "So something inside the network has to send it",
        "body": "Whatever you use — an app, a script, a voice assistant — the last hop has to originate on your LAN. That is a hard constraint of the protocol, not a limitation anyone has failed to engineer around."
      },
      {
        "title": "Today, that something is usually a PC left switched on",
        "body": "Software-only services solve this by asking you to keep a machine awake to relay the packet. That works. It also means a computer idling at 40 to 90 watts so that a different computer can be asleep."
      }
    ],
    "punchline": "This device is the thing inside your network. It costs about £{{price.kit}} once and draws about half a watt.",
    "diagram": {
      "caption": "Your phone talks to our relay over the internet. The relay talks to the dongle over the connection the dongle opened. Only the dongle talks to your PC — and only over the LAN, because that is the only place a magic packet can go.",
      "alt": "A diagram in four parts. A phone sends a wake request over the internet to a relay in the cloud. The relay passes it down an outbound connection that the dongle opened from inside the home network. The dongle broadcasts a Wake-on-LAN magic packet across the local network to a sleeping PC. A separate crossed-out arrow runs directly from the cloud to the PC, labelled to show that a magic packet cannot cross the internet.",
      "nodePhone": "Your phone",
      "nodeCloud": "Relay",
      "nodeDongle": "Dongle",
      "nodePc": "Sleeping PC",
      "edgeUp": "HTTPS",
      "edgeDown": "Outbound TLS, held open",
      "edgeLan": "Magic packet, LAN broadcast",
      "edgeBlocked": "Broadcasts stop here",
      "boundary": "Your home network"
    }
  },

  "how": {
    "eyebrow": "Setup",
    "title": "Three steps, about five minutes",
    "lead": "No app to install to get started, no account needed for the setup itself, and your Wi-Fi password never leaves the device.",
    "steps": [
      {
        "title": "Plug it in near the router",
        "body": "Any mains socket on the same network as the PC you want to wake. It does not need to be next to the PC, and it does not need an Ethernet cable — it only needs to be on the same segment, because that is how far a broadcast travels."
      },
      {
        "title": "Join its setup hotspot",
        "body": "On first boot it starts a Wi-Fi hotspot called `{{brand.setupSsidPrefix}}-XXXX`. Join it from your phone and the setup page opens by itself. Scan the QR code on the card in the box if it does not. Pick your network, enter the password, enter the MAC address of the PC."
      },
      {
        "title": "Tap Wake",
        "body": "The dongle reboots, joins your network and dials the relay. From then on it is reachable from the dashboard, the API, or a voice assistant — from anywhere, with your PC properly asleep."
      }
    ],
    "aside": {
      "title": "Where the Wi-Fi password goes",
      "body": "Into the device's flash, and nowhere else. No frame in the [wire protocol]({{brand.repo}}/blob/main/PROTOCOL.md) carries Wi-Fi credentials in either direction, and the firmware rejects any attempt by a relay to set them. Compromising a relay — ours or anybody's — does not yield anyone's Wi-Fi password."
    }
  },

  "compare": {
    "eyebrow": "Honest comparison",
    "title": "How this compares to the alternatives",
    "lead": "There are five realistic ways to wake a PC remotely. Four of them are genuinely fine for some people. Here is where each one actually lands, including the row where we lose.",
    "columns": [
      { "id": "us", "label": "{{brand.name}}", "sub": "£{{price.kit}} once, ~0.5 W", "highlight": true },
      { "id": "pc", "label": "Leave a PC on", "sub": "Free, 40–90 W" },
      { "id": "nas", "label": "Router or NAS script", "sub": "Free if you own one" },
      { "id": "plug", "label": "Smart plug", "sub": "£10–£25, ~1 W" },
      { "id": "svc", "label": "Software-only service", "sub": "£0–£25/yr + a host PC" }
    ],
    "rows": [
      {
        "label": "Works with every other machine asleep",
        "detail": "Nothing else in the house has to stay powered up for the wake to arrive.",
        "cells": {
          "us": ["yes", "Yes"],
          "pc": ["no", "No — that is the point"],
          "nas": ["partial", "Only if the NAS or router is already on"],
          "plug": ["yes", "Yes"],
          "svc": ["no", "Needs an always-on host"]
        }
      },
      {
        "label": "Wakes from sleep rather than cutting power",
        "detail": "A magic packet resumes the machine cleanly. Yanking mains and restoring it is a cold boot, and only if the board is set to power on after a power loss.",
        "cells": {
          "us": ["yes", "Yes — magic packet"],
          "pc": ["yes", "Yes — magic packet"],
          "nas": ["yes", "Yes — magic packet"],
          "plug": ["no", "No — power cycle only"],
          "svc": ["yes", "Yes — magic packet"]
        }
      },
      {
        "label": "No port forwarding, nothing exposed inbound",
        "detail": "The alternative is opening a UDP port to the internet, which is the single most common way this gets done badly.",
        "cells": {
          "us": ["yes", "Outbound TLS only"],
          "pc": ["partial", "Depends entirely on the tool"],
          "nas": ["no", "Usually needs a forwarded port or a VPN"],
          "plug": ["yes", "Vendor cloud, outbound"],
          "svc": ["yes", "Outbound, via their daemon"]
        }
      },
      {
        "label": "Runs on hardware you control, with source you can read",
        "detail": "Firmware, case and tools are MIT; the reference relay is AGPL-3.0.",
        "cells": {
          "us": ["yes", "Fully open, self-hostable"],
          "pc": ["partial", "Some tools are open"],
          "nas": ["yes", "It is your script"],
          "plug": ["no", "Closed vendor cloud"],
          "svc": ["no", "Closed daemon and cloud"]
        }
      },
      {
        "label": "Survives the vendor disappearing",
        "detail": "If we stop existing, does the hardware you bought keep working?",
        "cells": {
          "us": ["yes", "Repoint it at your own relay"],
          "pc": ["partial", "Depends on the tool"],
          "nas": ["yes", "Nothing to disappear"],
          "plug": ["no", "Cloud shuts down, plug is a plug"],
          "svc": ["no", "Service ends, feature ends"]
        }
      },
      {
        "label": "Cost over five years",
        "detail": "Hardware plus electricity plus subscription, roughly, at 25p per kWh.",
        "cells": {
          "us": ["yes", "£{{price.kit}} plus about £6 of power"],
          "pc": ["no", "£440–£990 of electricity"],
          "nas": ["partial", "Free, if the box was already on"],
          "plug": ["yes", "About £20 plus £11 of power"],
          "svc": ["no", "£0–£125, plus the host PC's power"]
        }
      },
      {
        "label": "Confirms the PC actually came up",
        "detail": "A magic packet is fire-and-forget. Knowing whether it worked means probing the target afterwards.",
        "cells": {
          "us": ["partial", "Yes, on the paid tier"],
          "pc": ["partial", "If the tool bothers to check"],
          "nas": ["partial", "If you write it yourself"],
          "plug": ["no", "No idea, it only knows about mains"],
          "svc": ["partial", "Usually on the paid tier"]
        }
      },
      {
        "label": "Wakes a target that is only on Wi-Fi",
        "detail": "This is the row where we lose, and we would rather you read it here than find out after buying.",
        "loss": true,
        "cells": {
          "us": ["partial", "Best-effort — see below"],
          "pc": ["partial", "Best-effort — same limits"],
          "nas": ["partial", "Best-effort — same limits"],
          "plug": ["yes", "Works — it does not care how the PC is networked"],
          "svc": ["partial", "Best-effort — same limits"]
        }
      }
    ],
    "lossNote": {
      "title": "About that last row",
      "body": "Waking a machine whose only connection is Wi-Fi means WoWLAN, and WoWLAN is genuinely unreliable. Support varies by adapter and driver, group-key rekeying interferes with it, and Modern Standby complicates it further. Every magic-packet product shares this limitation, including us — a smart plug does not, because it is not sending a packet at all, it is cutting the mains. If your target is Wi-Fi-only, run the [compatibility check](#checker) before you spend anything."
    },
    "legend": { "yes": "Yes", "partial": "Partly", "no": "No" },
    "mobileHint": "Scroll the table sideways to see every option."
  },

  "paths": {
    "eyebrow": "Build, buy or subscribe",
    "title": "Three ways to use this, and one clear boundary",
    "lead": "Everything the device does is open. What you pay for is hosted infrastructure — uptime, accounts, apps, voice skills, support. There is no crippled community firmware and no private premium firmware.",
    "items": [
      {
        "kicker": "Build it",
        "title": "Free, and permanently so",
        "body": "The complete firmware, the case, the bill of materials and a self-hostable relay are all in the repository. You do not need us for any of it, and you never will.",
        "cta": "Read the repository",
        "href": "{{brand.repo}}"
      },
      {
        "kicker": "Buy it",
        "title": "£{{price.kit}} for the kit",
        "body": "A Pico 2 W, an official Raspberry Pi power supply and the printed case, pre-flashed and provisioned. This is convenience, not capability — it does nothing a self-built one cannot.",
        "cta": "See what is in the box",
        "href": "#kit"
      },
      {
        "kicker": "Subscribe",
        "title": "Free tier, £{{price.plus}} a year for more",
        "body": "Our hosted relay is free for remote wake from the web dashboard. The paid tier adds voice assistants, schedules, wake confirmation and multiple devices.",
        "cta": "Compare the tiers",
        "href": "#pricing"
      }
    ],
    "boundary": "The boundary is a service, not a feature list. If we ever move a device capability behind a subscription, we will have broken the promise this paragraph is making."
  },

  "compat": {
    "eyebrow": "Before you buy",
    "title": "Will this actually wake your PC?",
    "lead": "Usually — and the honest answer depends far more on your PC than on us. At most seven questions, no email address, and you get the exact click-path for your operating system at the end.",
    "start": "Start the check",
    "restart": "Start again",
    "back": "Back",
    "print": "Print this checklist",
    "printed": "Printed checklist for {{brand.name}}",
    "progress": "Question {{n}} of {{total}}",
    "progressLabel": "Compatibility check progress",
    "resultTitle": "Your result",
    "checklistTitle": "Your checklist",
    "checklistLead": "Work through these in order. The click-paths are for the operating system you told us about.",
    "answersTitle": "What you told us",
    "questions": [
      {
        "id": "link",
        "q": "How is the PC you want to wake connected to your router?",
        "help": "This is the single biggest factor in whether Wake-on-LAN works at all.",
        "options": [
          { "v": "wired", "label": "Ethernet cable", "note": "Best case. This is what Wake-on-LAN was designed for." },
          { "v": "wifi", "label": "Wi-Fi only", "note": "Possible, but genuinely best-effort. We will explain what to expect." },
          { "v": "both", "label": "Both — it has a cable and Wi-Fi", "note": "We will target the wired adapter, which is the reliable one." }
        ]
      },
      {
        "id": "os",
        "q": "Which operating system does it run?",
        "help": "The settings that matter, and where they hide, differ by OS.",
        "options": [
          { "v": "win", "label": "Windows 11 or Windows 10" },
          { "v": "macintel", "label": "macOS on an Intel Mac" },
          { "v": "macarm", "label": "macOS on Apple silicon" },
          { "v": "linux", "label": "Linux" }
        ]
      },
      {
        "id": "state",
        "q": "How will the machine be when you want to wake it?",
        "help": "Waking from sleep and waking from a full shutdown are different problems with different failure modes.",
        "options": [
          { "v": "sleep", "label": "Asleep", "note": "Suspend-to-RAM, or Modern Standby on newer laptops." },
          { "v": "hibernate", "label": "Hibernated", "note": "Suspend-to-disk. Behaves like a shutdown as far as the network card is concerned." },
          { "v": "off", "label": "Fully shut down", "note": "Harder — the board has to keep the network card powered while it is off." }
        ]
      },
      {
        "id": "nic",
        "showIf": { "os": ["win"] },
        "q": "Does your network adapter list \"Wake on Magic Packet\"?",
        "help": "Device Manager, then Network adapters, then your adapter, then the Advanced tab. If you have not looked, say so — we will include the steps.",
        "options": [
          { "v": "yes", "label": "Yes, and it is enabled" },
          { "v": "present", "label": "It is there, but disabled or I am not sure" },
          { "v": "no", "label": "No such setting exists", "note": "Some cheap USB adapters genuinely cannot do this." },
          { "v": "unsure", "label": "I have not looked" }
        ]
      },
      {
        "id": "faststart",
        "showIf": { "os": ["win"] },
        "q": "Is Windows fast startup switched on?",
        "help": "It is on by default. It turns \"shut down\" into a partial hibernation, and on most machines that silently disarms Wake-on-LAN.",
        "options": [
          { "v": "off", "label": "Off — I have already disabled it" },
          { "v": "on", "label": "On" },
          { "v": "unsure", "label": "I do not know", "note": "Assume on. It is the default." }
        ]
      },
      {
        "id": "bios",
        "showIf": { "os": ["win", "linux"] },
        "q": "Is Wake-on-LAN enabled in the BIOS or UEFI?",
        "help": "Usually under Power Management, and often called \"Wake on PCI-E\", \"Power On By PCI-E\" or \"Resume by LAN\".",
        "options": [
          { "v": "yes", "label": "Yes, it is enabled" },
          { "v": "no", "label": "No, or I found it and it was off" },
          { "v": "unsure", "label": "I have not checked" },
          { "v": "nooption", "label": "There is no such option", "note": "Common on laptops, where it is often tied to a docking or \"wake on LAN\" setting instead." }
        ]
      },
      {
        "id": "network",
        "q": "Will the dongle be on the same network as the PC?",
        "help": "Not the same room — the same network. Guest SSIDs and \"client isolation\" put devices on segments that cannot broadcast to each other, and that stops this dead.",
        "options": [
          { "v": "same", "label": "Yes, same router, same main network" },
          { "v": "guest", "label": "It would be on a guest network", "note": "This will not work until you change it." },
          { "v": "isolated", "label": "My router has client or AP isolation switched on", "note": "This will not work until you change it." },
          { "v": "unsure", "label": "I am not sure" }
        ]
      }
    ],
    "verdicts": {
      "blocked": {
        "tone": "blocked",
        "badge": "Fix the network first",
        "title": "This will not work as described until the network changes",
        "body": "A magic packet is a broadcast, and the network you described deliberately stops devices broadcasting to each other. Nothing about the dongle can work around that — no product in this category can. The fix is usually one setting in your router, and it is the first item on your checklist."
      },
      "likely": {
        "tone": "good",
        "badge": "Very likely to work",
        "title": "Everything you told us points the right way",
        "body": "A wired target, with the adapter and firmware settings already in place, is the case Wake-on-LAN was designed for. Work through the checklist to confirm, and keep it for when you set the dongle up."
      },
      "changes": {
        "tone": "warn",
        "badge": "Needs {{n}} change before it will work",
        "badgePlural": "Needs {{n}} changes before it will work",
        "title": "Very likely to work once you have changed a couple of settings",
        "body": "None of these are difficult and none of them cost anything — they are the settings that ship disabled on most machines. The click-path for each one is below."
      },
      "wifi": {
        "tone": "warn",
        "badge": "Wi-Fi only — best-effort",
        "title": "This may work, and we are not going to promise that it will",
        "body": "Waking a Wi-Fi-only machine means WoWLAN, and WoWLAN is unreliable in ways that are outside anyone's control: support varies by adapter and driver, group-key rekeying interferes with it, and Modern Standby complicates it further. Every magic-packet product has this limitation. If you can run a cable to this machine, do that instead and the answer becomes a confident yes."
      },
      "macoff": {
        "tone": "warn",
        "badge": "Works from sleep, not from off",
        "title": "A Mac will not wake from a full shutdown",
        "body": "macOS supports \"Wake for network access\" from sleep, and Apple silicon Macs handle this well over Ethernet. None of them will start from a full shutdown via Wake-on-LAN, because the hardware does not keep the network interface armed in that state. If you put the Mac to sleep instead of shutting it down, this works."
      }
    },
    "tasks": {
      "router-isolation": {
        "title": "Turn off client isolation, or move the dongle to the main network",
        "why": "Client isolation, AP isolation and guest SSIDs all exist to stop devices on the network talking to each other. That includes broadcasts, which is exactly what a magic packet is.",
        "steps": [
          "Open your router's admin page — usually `192.168.0.1` or `192.168.1.1`.",
          "Look under Wireless, Wireless Advanced, or Guest Network for a setting called **AP Isolation**, **Client Isolation**, **Wireless Isolation** or **Guest network isolation**.",
          "Either switch it off for the network the dongle will join, or put both the dongle and the PC on your main SSID instead of the guest one.",
          "If your router runs separate 2.4 GHz and 5 GHz SSIDs, that is fine — they are normally the same segment. Guest SSIDs are not."
        ]
      },
      "router-check": {
        "title": "Check your router is not isolating clients",
        "why": "It is worth two minutes now rather than an hour of confusion later. Most consumer routers have this off by default, but mesh systems and ISP-supplied boxes vary.",
        "steps": [
          "Open your router's admin page — usually `192.168.0.1` or `192.168.1.1`.",
          "Under Wireless or Guest Network, confirm **AP Isolation** / **Client Isolation** is off for your main network.",
          "Confirm you are not planning to plug the dongle into a guest SSID.",
          "If your setup uses VLANs, put the dongle in the same VLAN as the PC."
        ]
      },
      "bios-wol": {
        "title": "Enable Wake-on-LAN in the BIOS or UEFI",
        "why": "This is what keeps the network card powered while the machine is off or asleep. On most boards it ships disabled, and on many it is disabled again by the energy-saving option below.",
        "steps": [
          "Restart and press `Del`, `F2`, or `F10` at the boot logo to enter setup — the key is usually shown on screen.",
          "Find the power section. It is called **Power Management**, **APM Configuration**, or lives under **Advanced**.",
          "Enable whichever of these your board offers: **Wake on PCI-E**, **Power On By PCI-E/PCI**, **Resume by LAN**, **Wake on LAN**.",
          "Disable **ErP Ready** or **EuP 2013** if present. It cuts standby power to the network card, which defeats all of the above.",
          "Save and exit."
        ]
      },
      "bios-none": {
        "title": "Check the manufacturer's power settings instead",
        "why": "Many laptops do not expose Wake-on-LAN in the BIOS at all. It is usually there under a different name, or handled by a vendor utility.",
        "steps": [
          "In BIOS setup, look for **Wake on LAN**, **Wake on Dock**, or **Deep Sleep Control** — disabling deep sleep is often what unblocks it.",
          "On Lenovo, check *Config, Network, Wake on LAN*. On Dell, check *Power Management, Wake on LAN/WLAN*. On HP, check *Advanced, Built-in Device Options*.",
          "If the machine only wakes when docked, the dock's Ethernet MAC is the one to give the dongle, not the laptop's."
        ]
      },
      "win-nic-magic": {
        "title": "Enable \"Wake on Magic Packet\" on the network adapter",
        "why": "This is the setting that tells the network card to look for magic packets while the machine is asleep. Windows ships it enabled on some drivers and disabled on others.",
        "steps": [
          "Press `Windows`+`X` and choose **Device Manager**.",
          "Expand **Network adapters** and double-click your Ethernet adapter.",
          "Open the **Advanced** tab and find **Wake on Magic Packet**. Set it to **Enabled**.",
          "Some drivers also have **Wake on Pattern Match** — leave it off, it causes spurious wakes. Some have **Shutdown Wake-On-Lan** or **Wake on LAN after shutdown**; enable that too if you plan to wake from a full shutdown."
        ]
      },
      "win-nic-missing": {
        "title": "Check whether this adapter can do Wake-on-LAN at all",
        "why": "You told us the setting is not there. On a built-in Intel or Realtek adapter it almost always is, under a slightly different name. On a cheap USB-to-Ethernet dongle it may genuinely be absent.",
        "steps": [
          "In Device Manager, open the adapter's **Advanced** tab and look for anything containing *Wake*: **Wake on Magic Packet**, **Wake From Shutdown**, **WOL & Shutdown Link Speed**.",
          "If there is nothing, update the driver from the adapter manufacturer's site rather than Windows Update — the Microsoft-supplied driver often omits these settings.",
          "If it is a USB adapter and still shows nothing, it cannot do this. A £10 PCIe or a different USB adapter with a Realtek RTL8153 chipset will."
        ]
      },
      "win-nic-power": {
        "title": "Allow the adapter to wake the computer",
        "why": "Separate from the Advanced tab, and easy to miss. Windows will otherwise ignore the wake even when the card sees the packet.",
        "steps": [
          "Same adapter properties dialog, **Power Management** tab.",
          "Tick **Allow this device to wake the computer**.",
          "Tick **Only allow a magic packet to wake the computer** — this prevents the machine waking up every time something broadcasts on your network.",
          "Leave **Allow the computer to turn off this device to save power** ticked; it does not interfere."
        ]
      },
      "win-faststart": {
        "title": "Turn off Windows fast startup",
        "why": "Fast startup makes \"shut down\" a partial hibernation rather than a real shutdown. In that state most machines put the network card into a mode where it will not wake. This is the single most common reason Wake-on-LAN appears to be broken.",
        "steps": [
          "Open **Control Panel**, then *Hardware and Sound*, then **Power Options**.",
          "Click **Choose what the power buttons do**.",
          "Click **Change settings that are currently unavailable**.",
          "Untick **Turn on fast startup (recommended)** and save.",
          "Alternatively, run `powercfg /h off` in an Administrator terminal — but note that this disables hibernation entirely."
        ]
      },
      "win-mac": {
        "title": "Find the MAC address to give the dongle",
        "why": "The magic packet is addressed to a specific network card. Give it the wrong one — the Wi-Fi adapter instead of the Ethernet one, or a virtual adapter from a VM — and nothing happens.",
        "steps": [
          "Open a terminal and run `getmac /v`.",
          "Find the row whose Connection Name is your **Ethernet** adapter, and read the Physical Address column.",
          "It looks like `A1:B2:C3:D4:E5:F6`. Ignore anything belonging to VirtualBox, VMware, Hyper-V, WSL or a VPN.",
          "If you prefer a GUI: *Settings, Network & internet, Ethernet*, then read **Physical address (MAC)**."
        ]
      },
      "win-mac-wifi": {
        "title": "Find the Wi-Fi adapter's MAC address",
        "why": "Wi-Fi adapters usually have a different MAC from the Ethernet port on the same machine, and Windows may also be randomising it.",
        "steps": [
          "Run `getmac /v` and read the row for your **Wi-Fi** adapter.",
          "Go to *Settings, Network & internet, Wi-Fi*, open your network's properties and set **Random hardware addresses** to **Off**. If Windows changes the MAC, the dongle will be addressing a card that no longer answers to it.",
          "Re-read the MAC after turning randomisation off — it will have changed back to the hardware one."
        ]
      },
      "mac-wake": {
        "title": "Turn on \"Wake for network access\"",
        "why": "This is macOS's name for Wake-on-LAN. Without it the Mac ignores magic packets entirely.",
        "steps": [
          "On a desktop Mac: *System Settings, Energy Saver*, and enable **Wake for network access**.",
          "On a MacBook: *System Settings, Battery, Options*, and set **Wake for network access** to **Only on power adapter** or **Always**.",
          "On older macOS: *System Preferences, Energy Saver*, tick **Wake for Wi-Fi network access**.",
          "Keep the Mac plugged into mains. On battery, macOS will not honour this."
        ]
      },
      "mac-mac": {
        "title": "Find the MAC address to give the dongle",
        "why": "You want the hardware address of the interface the Mac will be listening on while asleep.",
        "steps": [
          "Open *System Settings, Network*, select **Ethernet**, click **Details**, then **Hardware**, and read the MAC address.",
          "Or run `ifconfig en0 | grep ether` in Terminal. `en0` is usually Wi-Fi on laptops and Ethernet on desktops — check with `networksetup -listallhardwareports`.",
          "Use the Ethernet interface's address if the Mac is wired."
        ]
      },
      "mac-arm-note": {
        "title": "Know what Apple silicon will and will not do",
        "why": "Apple silicon Macs handle wake-from-sleep over Ethernet well, and do not support waking from a full shutdown at all.",
        "steps": [
          "Use **Sleep** rather than **Shut Down** on this machine.",
          "Over Ethernet, including a Thunderbolt dock's Ethernet port, wake from sleep is reliable.",
          "Over Wi-Fi, the Mac relies on a Bonjour sleep proxy on the network; it often works and is not something you can configure or depend on."
        ]
      },
      "linux-ethtool": {
        "title": "Arm the network card with ethtool",
        "why": "Most distributions leave Wake-on-LAN disabled on the interface even when the BIOS has it enabled.",
        "steps": [
          "Find the interface name with `ip link show`.",
          "Check what it supports: `sudo ethtool enp3s0 | grep -i wake`. You want `Supports Wake-on` to include `g`.",
          "Arm it: `sudo ethtool -s enp3s0 wol g`.",
          "Confirm with `sudo ethtool enp3s0 | grep -i wake` — `Wake-on` should now read `g`."
        ]
      },
      "linux-persist": {
        "title": "Make it survive a reboot",
        "why": "`ethtool -s` does not persist. Without this it works until the next restart and then silently stops.",
        "steps": [
          "With NetworkManager: `nmcli connection modify \"Wired connection 1\" 802-3-ethernet.wake-on-lan magic`.",
          "With systemd-networkd, add `WakeOnLan=magic` to the `[Link]` section of your `.link` file in `/etc/systemd/network/`.",
          "Otherwise create a systemd unit that runs `ethtool -s <iface> wol g` at boot, `After=network.target`.",
          "Reboot and re-check with `sudo ethtool <iface> | grep -i wake` before you trust it."
        ]
      },
      "linux-mac": {
        "title": "Find the MAC address to give the dongle",
        "why": "Straightforward, but pick the physical interface rather than a bridge or a container network.",
        "steps": [
          "Run `ip link show`.",
          "Read the `link/ether` value under your physical interface — typically `enp3s0` or `eth0`.",
          "Ignore `docker0`, `virbr0`, `br-*` and anything created by a VPN."
        ]
      },
      "wifi-expect": {
        "title": "Know what to expect from a Wi-Fi-only target",
        "why": "We would rather set this expectation now than in a support ticket. This is the honest picture.",
        "steps": [
          "Check the adapter actually claims support: on Windows, look for **Wake on Magic Packet** in the adapter's Advanced tab; on Linux, `iw phy | grep -A5 WoWLAN`.",
          "Expect it to fail after the access point rekeys the group key — typically every hour on consumer routers, and there is no fix from our side.",
          "Expect Modern Standby laptops to behave inconsistently, because the OS, not the card, decides what counts as a wake source.",
          "If this machine matters to you, run a cable. A £5 Ethernet cable converts this from best-effort to reliable."
        ]
      },
      "s5-note": {
        "title": "Understand why \"off\" is harder than \"asleep\"",
        "why": "You said the machine will be fully shut down. That is the hardest case, and it is worth knowing what has to be true.",
        "steps": [
          "Asleep, the network card is still powered by the +5 V standby rail and armed. This nearly always works once the settings above are right.",
          "Shut down, the board has to keep feeding that rail. That is what the BIOS **Wake on PCI-E** option controls, and what **ErP Ready** switches off.",
          "Some drivers need a separate **Wake on LAN after shutdown** or **Shutdown Wake-On-Lan** setting on the adapter's Advanced tab.",
          "If you cannot get shutdown wake working, sleep is a perfectly good target — a sleeping desktop draws two to five watts."
        ]
      },
      "hibernate-note": {
        "title": "Treat hibernation like a shutdown",
        "why": "You said the machine will be hibernated. From the network card's point of view this is the same as being off.",
        "steps": [
          "Everything on the shutdown path applies: BIOS Wake on PCI-E, ErP disabled, and any \"wake after shutdown\" adapter setting.",
          "On Windows, verify with `powercfg /lastwake` after a successful wake to confirm the network adapter is credited as the wake source.",
          "If it proves unreliable, switch the machine to sleep instead. The extra draw is small and the wake is dependable."
        ]
      },
      "dongle-place": {
        "title": "Place the dongle on the same network segment",
        "why": "This is the one thing that is about our device rather than yours. It only needs mains power and Wi-Fi — but it must be able to broadcast to the target.",
        "steps": [
          "Plug it into any mains socket within decent Wi-Fi range of your router.",
          "Join it to your **main** SSID, not a guest one.",
          "It does not need to be near the PC, on the same floor, or plugged into anything else.",
          "It draws about half a watt, so leaving it powered permanently is the intended use."
        ]
      },
      "verify": {
        "title": "Verify before you rely on it",
        "why": "Everything above is theory until a machine actually comes back up. Test it once while you are stood next to it.",
        "steps": [
          "Put the machine into the state you actually intend to use — asleep, hibernated, or off.",
          "Wait two minutes. Some adapters take a moment to enter their armed state, and testing instantly hides failures.",
          "Send a wake from the dashboard and watch the machine.",
          "On Windows, confirm what woke it with `powercfg /lastwake` — you want to see the network adapter named there."
        ]
      }
    },
    "summaryLabels": {
      "link": "Connection",
      "os": "Operating system",
      "state": "Target state",
      "nic": "Magic packet setting",
      "faststart": "Fast startup",
      "bios": "BIOS Wake-on-LAN",
      "network": "Dongle network"
    },
    "footnote": "This check makes no network requests and stores nothing. It runs entirely in your browser, and the answers disappear when you close the tab."
  },

  "kit": {
    "eyebrow": "The kit",
    "title": "Everything in one box, pre-flashed",
    "lead": "The parts cost about what you would pay sourcing them yourself. You are paying for it arriving assembled, flashed and provisioned, with a card that gets you to the setup page in one scan.",
    "product": {
      "name": "{{brand.name}} kit",
      "price": "£{{price.kit}}",
      "priceNote": "One-off. Includes UK VAT and delivery.",
      "includes": [
        "Raspberry Pi Pico 2 W, pre-flashed with the current firmware",
        "Official Raspberry Pi USB-C power supply",
        "Printed snap case, no screws, no tools",
        "Setup card with the QR code for the hotspot",
        "Two-year hardware warranty"
      ],
      "notIncluded": "No subscription is bundled and none is required. The free tier covers remote wake from the dashboard indefinitely.",
      "availabilityTitle": "Not on sale yet",
      "availability": "The shop opens with the hosted relay. If you want one from the first batch, email us and we will tell you when it is live — one message, no list, no marketing.",
      "ctaReserve": "Email us about a kit",
      "ctaBuy": "Add to basket",
      "ctaBuild": "Or build one yourself — the bill of materials is in the repo",
      "specTitle": "Specification",
      "specs": [
        ["Board", "Raspberry Pi Pico 2 W (RP2350, 2.4 GHz Wi-Fi)"],
        ["Power", "USB-C, about 0.5 W idle"],
        ["Network", "2.4 GHz Wi-Fi only — the target PC can be wired"],
        ["Connection", "Outbound WSS to the relay, no inbound ports"],
        ["Targets", "Up to eight MAC addresses per device"],
        ["Case", "PLA or PETG, MIT-licensed, printable yourself"],
        ["Size", "62 × 34 × 16 mm"]
      ]
    }
  },

  "ecosystem": {
    "eyebrow": "Ecosystem",
    "title": "Ways to send a wake",
    "lead": "The dongle does one thing. Everything below is a different way of telling it to do that thing. We have labelled each honestly rather than listing them all as if they shipped today.",
    "badges": {
      "now": "Available now",
      "launch": "At launch",
      "dev": "In development",
      "api": "Via the API"
    },
    "items": [
      {
        "title": "Web dashboard",
        "badge": "launch",
        "body": "Your devices, your targets, one Wake button. Works on a phone without installing anything. This is what the free tier gives you.",
        "detail": "Magic-link sign-in, no password to forget."
      },
      {
        "title": "REST API and webhooks",
        "badge": "launch",
        "body": "A token, a POST, and a wake goes out. Webhooks fire on wake sent, wake confirmed and device online or offline, so you can wire this into whatever you already run.",
        "detail": "Documented alongside the wire protocol."
      },
      {
        "title": "Self-hosted relay",
        "badge": "now",
        "body": "The reference relay is in the repository today, AGPL-3.0, single-tenant, and about five minutes to stand up. Point the dongle at it and we are entirely out of the loop.",
        "detail": "Node and `ws`. No database required."
      },
      {
        "title": "Home Assistant",
        "badge": "api",
        "body": "A `rest_command` against the API works today and takes four lines of YAML. A proper integration is on the list, and we would rather point you at something that works now than promise one.",
        "detail": "Or skip us entirely and use HA's built-in `wake_on_lan` — if HA is always on, you may not need this product."
      },
      {
        "title": "Amazon Alexa",
        "badge": "dev",
        "body": "\"Alexa, wake the study PC.\" A custom skill linked to your account, in development and not yet submitted for certification.",
        "detail": "Paid tier when it lands."
      },
      {
        "title": "Google Home",
        "badge": "dev",
        "body": "Same idea, same tier, behind Alexa in the queue. Modelled as a scene rather than a switch, because a magic packet can turn a machine on and cannot turn it off.",
        "detail": "Paid tier when it lands."
      }
    ],
    "honest": "If a badge says \"in development\", it means the code exists and is not finished. It does not mean we have thought about it."
  },

  "pricing": {
    "eyebrow": "Pricing",
    "title": "The hardware is yours. The service is optional.",
    "lead": "Every tier speaks the same protocol to the same firmware. Paying changes what our servers will do for you, never what your device is allowed to do.",
    "launchRibbon": "Launch offer",
    "launchNote": "{{launch.note}}",
    "perYear": "per year",
    "free": "Free",
    "forever": "always",
    "tiers": [
      {
        "id": "free",
        "name": "Free",
        "price": "£0",
        "period": "always",
        "tagline": "Remote wake, from anywhere, indefinitely.",
        "cta": "Included with any device",
        "features": [
          ["yes", "One device, one wake target"],
          ["yes", "Web dashboard from any browser"],
          ["yes", "Unlimited wakes"],
          ["yes", "Magic-link sign-in"],
          ["no", "Voice assistants"],
          ["no", "Wake confirmation"],
          ["no", "Scheduled and repeating wakes"],
          ["no", "REST API and webhooks"],
          ["no", "Email support"]
        ]
      },
      {
        "id": "plus",
        "name": "Plus",
        "price": "£{{price.plus}}",
        "period": "per year",
        "tagline": "For a household with more than one machine.",
        "featured": true,
        "cta": "Available at launch",
        "features": [
          ["yes", "Up to three devices, eight targets each"],
          ["yes", "Web dashboard from any browser"],
          ["yes", "Unlimited wakes"],
          ["yes", "Magic-link sign-in"],
          ["yes", "Alexa and Google Home"],
          ["yes", "Wake confirmation — we probe the target and tell you"],
          ["yes", "Scheduled and repeating wakes"],
          ["no", "REST API and webhooks"],
          ["yes", "Email support"]
        ]
      },
      {
        "id": "pro",
        "name": "Pro",
        "price": "£{{price.pro}}",
        "period": "per year",
        "tagline": "For people wiring this into something else.",
        "cta": "Available at launch",
        "features": [
          ["yes", "Ten devices, eight targets each"],
          ["yes", "Web dashboard from any browser"],
          ["yes", "Unlimited wakes"],
          ["yes", "Magic-link sign-in"],
          ["yes", "Alexa and Google Home"],
          ["yes", "Wake confirmation — we probe the target and tell you"],
          ["yes", "Scheduled and repeating wakes"],
          ["yes", "REST API, webhooks and event history"],
          ["yes", "Email support, one working day"]
        ]
      }
    ],
    "footnote": "Prices include UK VAT. Cancel whenever you like; the device keeps working on the free tier, and if you would rather not deal with us at all, point it at your own relay and it keeps every paid capability that does not require a server we run.",
    "selfhost": "Self-hosting is free and always will be. It is not a downgrade path — it is the same firmware talking the same protocol to a relay you control."
  },

  "oss": {
    "eyebrow": "Open source",
    "title": "The device is yours, including the parts that make it work",
    "lead": "There is no community edition. The firmware in the repository is the firmware on the kit we sell, and the protocol it speaks is a published contract rather than an implementation detail.",
    "licence": "Firmware, case and tools are **MIT**. The reference relay is **AGPL-3.0**. The name and logo are not open — you can fork all of it, you just cannot call your fork ours.",
    "repoCta": "Read the source",
    "protocolCta": "Read the wire protocol",
    "stars": "stars",
    "starsUnavailable": "on GitHub",
    "selfhostTitle": "Self-host the relay in about five minutes",
    "selfhostBody": "The reference relay is single-tenant, has no database, and implements the whole protocol including the challenge-response handshake. It is a real implementation, not a demo.",
    "selfhostNote": "Then point the dongle at your own `wss://` endpoint from the setup page, and we are out of the loop entirely.",
    "copy": "Copy",
    "copied": "Copied",
    "cards": [
      { "title": "firmware/", "body": "Pico 2 W firmware in C on the pico-sdk. Builds with CMake.", "licence": "MIT" },
      { "title": "relay-reference/", "body": "The self-hostable relay. Node and `ws`, no database.", "licence": "AGPL-3.0" },
      { "title": "case/", "body": "Snap case as STEP, STL and 3MF, with print notes.", "licence": "MIT" },
      { "title": "tools/mkconfig/", "body": "Generate a config UF2 for headless provisioning.", "licence": "MIT" }
    ]
  },

  "faq": {
    "eyebrow": "Questions",
    "title": "The things that actually go wrong",
    "lead": "Ordered by how often we expect them to come up rather than by how flattering they are.",
    "items": [
      {
        "q": "Do I need to forward a port?",
        "a": "No, and you should not. The dongle opens an outbound TLS WebSocket to the relay and keeps it open. Your router treats that like any other outbound connection. Nothing on your network becomes reachable from the internet because you plugged this in."
      },
      {
        "q": "Does it matter if my home IP address changes?",
        "a": "No. Nothing ever connects *to* your network, so nothing needs to know where it is. The dongle re-establishes its outbound connection after a reconnect and carries on. You do not need dynamic DNS, a static IP, or a VPN."
      },
      {
        "q": "My router has client isolation or a guest network. Will this work?",
        "a": "Not across it. Client isolation, AP isolation and guest SSIDs deliberately stop devices on the network from reaching each other, and that includes broadcasts. A magic packet is a broadcast. Put the dongle on your main SSID, in the same VLAN as the target, and it works. No product in this category can get around this, because the packet has to physically reach the target's network card."
      },
      {
        "q": "How do I find the right MAC address?",
        "a": "On Windows, run `getmac /v` and take the Physical Address of the **Ethernet** row — not a VirtualBox, VMware, Hyper-V, WSL or VPN adapter. On macOS, *System Settings, Network, Ethernet, Details, Hardware*, or `ifconfig en0 | grep ether`. On Linux, `ip link show` and read `link/ether` off the physical interface. Give the dongle the address of the card the machine will be listening on while asleep — if it is wired, that is the Ethernet one, even if Wi-Fi is also enabled."
      },
      {
        "q": "It is not waking, and I have checked everything. What is it?",
        "a": "In our experience, in this order: Windows fast startup, the adapter's **Allow this device to wake the computer** checkbox, a BIOS **Wake on PCI-E** setting that was never enabled, and the wrong MAC address. Run the [compatibility check](#checker) — it produces the click-path for each of these on your specific OS."
      },
      {
        "q": "What is Windows fast startup, and why does it break this?",
        "a": "Fast startup makes \"Shut down\" a partial hibernation instead of a real shutdown, so the machine boots quicker. In that state most network cards end up in a power mode where they will not wake. It is on by default. Turn it off under *Control Panel, Power Options, Choose what the power buttons do, Change settings that are currently unavailable*, and untick **Turn on fast startup**."
      },
      {
        "q": "What do I set in the BIOS?",
        "a": "Enable whichever your board calls it: **Wake on PCI-E**, **Power On By PCI-E/PCI**, **Resume by LAN** or **Wake on LAN**. Then disable **ErP Ready** or **EuP 2013** if it is there — that option cuts standby power to the network card and quietly undoes everything else you just enabled."
      },
      {
        "q": "Why does waking from a full shutdown behave differently from waking from sleep?",
        "a": "Asleep, the network card is powered by the standby rail and already armed, so it just works once the settings are right. Fully off, the motherboard has to keep feeding that rail while the system is down, which is exactly what the BIOS Wake-on-LAN option controls. Some drivers additionally need a separate **Wake on LAN after shutdown** setting. If you cannot get shutdown wake working, sleep is a fine target — a sleeping desktop draws two to five watts."
      },
      {
        "q": "My PC is on Wi-Fi, not Ethernet. Will it work?",
        "a": "Best-effort, and we would rather say so here than in a support ticket. Waking over Wi-Fi means WoWLAN: support varies by adapter and driver, group-key rekeying interferes with it, and Modern Standby complicates it further. We do not promise it. If you can run a cable to the target, do — it turns a maybe into a yes. The dongle itself is Wi-Fi only, and that is fine; it is awake, so none of this applies to it."
      },
      {
        "q": "Can it turn my PC off as well?",
        "a": "Not by magic packet — there is no such thing as a sleep packet. Wake-on-LAN is one-way by design. On the paid tier you can install a small optional agent that handles sleep and shutdown, but the wake path never depends on anything being installed on the target."
      },
      {
        "q": "Does the dongle need to be near my PC?",
        "a": "No. It needs mains power, decent Wi-Fi to your router, and to be on the same network segment as the target. Different room, different floor, all fine — a broadcast reaches the whole segment."
      },
      {
        "q": "What happens to my Wi-Fi password?",
        "a": "It goes into the device's flash and nowhere else. You enter it locally, over the device's own setup hotspot or by USB. No frame in the protocol carries Wi-Fi credentials in either direction, and the firmware rejects any attempt by a relay to set them. That is a deliberate design decision, and it means compromising a relay — ours or anyone's — does not yield a single Wi-Fi password."
      },
      {
        "q": "How bad is it if someone steals my device token?",
        "a": "They could switch your PC on. That is genuinely the whole blast radius: it is irritating, it costs you some electricity, and it could be a first step in a physical intrusion. It grants no access to the woken machine. The token is never transmitted — authentication is a mutual challenge-response — so a hostile relay learns nothing reusable even if you point a device at one. The reasoning is written up in [the protocol]({{brand.repo}}/blob/main/PROTOCOL.md)."
      },
      {
        "q": "What if you disappear?",
        "a": "Point the dongle at your own relay from the setup page and carry on. The reference relay is in the repository under AGPL-3.0, it implements the full protocol, and standing it up takes about five minutes: `git clone`, then `docker compose up -d`. That is not a courtesy — the protocol is a published contract precisely so that this is a real option rather than a reassuring sentence."
      },
      {
        "q": "Why not just use a smart plug?",
        "a": "For some people that is the right answer, and we would rather say so. A smart plug cuts and restores mains, so it cold-boots the machine rather than resuming it, and it only works if the board is configured to power on after a power loss. You lose your open applications and it is hard on the hardware over time. If you want the machine to resume from sleep with everything where you left it, you want a magic packet."
      },
      {
        "q": "Why not run this on a Raspberry Pi I already own?",
        "a": "You can, and there is nothing stopping you — the relay is open and the wake side is a UDP broadcast. A Pi 4 draws about 3 W idle against this device's 0.5 W, and it is a general-purpose computer that needs updating. If you have one running anyway, use it. This exists for the people who do not."
      },
      {
        "q": "Do I have to pay for anything?",
        "a": "No. Build the hardware from the repository and self-host the relay and you never touch us. Buy the kit and use the free tier and you never pay again. The subscription buys hosted infrastructure — voice skills, schedules, confirmation, support — and never unlocks a capability in the firmware."
      }
    ]
  },

  "finalCta": {
    "title": "Check it will work before you spend anything",
    "body": "The compatibility check takes about a minute, asks for no email address, and will tell you plainly if the answer is no. That is a better outcome for both of us than a refund.",
    "primary": "Run the compatibility check",
    "secondary": "Read the source"
  },

  "footer": {
    "tagline": "{{brand.tagline}}",
    "caveat": "Wake-on-LAN to a Wi-Fi-only target is best-effort and depends on your adapter, driver and router. Wired targets are reliable. Routers with client isolation or guest-network separation will block magic packets regardless of hardware. Prices shown are provisional until the shop opens.",
    "affiliation": "{{brand.name}} is not affiliated with Raspberry Pi Ltd, Amazon or Google.",
    "groups": [
      {
        "title": "Product",
        "links": [
          { "label": "How it works", "href": "#how" },
          { "label": "Compare", "href": "#compare" },
          { "label": "Compatibility check", "href": "#checker" },
          { "label": "Pricing", "href": "#pricing" },
          { "label": "The kit", "href": "#kit" }
        ]
      },
      {
        "title": "Developers",
        "links": [
          { "label": "Documentation", "href": "{{brand.docs}}" },
          { "label": "Wire protocol", "href": "{{brand.repo}}/blob/main/PROTOCOL.md" },
          { "label": "GitHub", "href": "{{brand.repo}}" },
          { "label": "Changelog", "href": "{{brand.repo}}/releases" },
          { "label": "Self-hosting", "href": "{{brand.repo}}/tree/main/relay-reference" }
        ]
      },
      {
        "title": "Company",
        "links": [
          { "label": "Status", "href": "{{brand.status}}" },
          { "label": "Support", "href": "mailto:{{brand.supportEmail}}" },
          { "label": "Security", "href": "mailto:{{brand.securityEmail}}" },
          { "label": "Trademark", "href": "{{brand.repo}}/blob/main/TRADEMARK.md" },
          { "label": "Legal", "href": "mailto:{{brand.legalEmail}}" }
        ]
      }
    ],
    "legal": "© {{year}} {{brand.legalEntity}}. {{brand.name}} is a working name.",
    "themeLabel": "Theme"
  }
}
