WiFi portal
The device setup portal a crew member opens on a phone to give the vessel its network, its name and its filtering.
On this page
The WiFi portal is how a vessel is set up the first time. It is a standalone bundle that
packages/bosun-wifi-setup serves: a JSON API on port 80 and one page at /, reached over the setup network the
vessel broadcasts before Bosun itself is online. Setting the vessel up is part of setting the device up — the same
wizard names the vessel, asks where its internet comes from, names and locks the crew network, stamps its time zone
and applies the filtering — so the crew work through it once, on a phone, on the pontoon.
The portal is a captive portal: a phone that joins the setup network is sent to it, and the screens stay reachable while the network underneath them is reconfigured. It has two flows from one screen — the vessel bridges to an existing network (a marina's WiFi, Starlink, or shore ethernet on a cable) or it broadcasts its own crew network — and the rest of the wizard follows that choice.
The screens
Each screen has its own page, shown as the crew meet it on a phone and as the portal renders it on a laptop. The portal is one centred column — its own maximum is 672 px — so the desktop form is the same screen with more room around it, not a second layout.
| Step | Screen |
|---|---|
| 1 | Welcome |
| 2 | Vessel name |
| 3 | Internet source |
| 4 | Join a network or Upstream WiFi |
| 5 | Crew network |
| 6 | Crew password |
| 7 | Safety filtering |
| 8 | Time zone |
| 9 | Review |
| 10 | Setting up |
| 11 | Connected |
Adoption: the portal is a standalone bundle served before the vessel is on any network, so it carries its own copies of the tokens and typefaces and draws its own components (button, input, label, badge, collapsible, logo) — on Base UI since its last release. It takes the palette, IBM Plex Mono, the focus ring and the motion tokens from the system, and writes its own screens' copy for the crew.
Related
- Web UI: the same vessel, once the crew are on its network.
- Buttons, fields and inline messages: what the portal's own controls are drawn like.
- Accessibility: the target sizes and the announced state every setup step needs.