> ## Documentation Index
> Fetch the complete documentation index at: https://docs.altnautica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Setup Webapp

> Use the local webapp to set up MAVLink, video, network, and remote access.

# Setup Webapp

ADOS Drone Agent self-hosts a local setup webapp on port `8080` (served behind the native Rust front). Use it for
first-run onboarding and later hardware changes.

The webapp is local-first. MAVLink and video can work over hotspot, LAN, USB
tether, or direct Mission Control before you add any cloud or tunnel link.

## Open the webapp

Run this on the node:

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
ados
```

Open the setup URL shown in the terminal. Common URLs are:

| Link       | URL                      |
| ---------- | ------------------------ |
| mDNS       | `http://ados.local:8080` |
| Hotspot    | `http://192.168.4.1`     |
| USB tether | `http://10.55.0.1:8080`  |
| LAN        | `http://<node-ip>:8080`  |

You can also run:

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
ados status
```

## Setup checklist

The first screen shows a task list:

1. Identify device.
2. MAVLink.
3. Video.
4. Network.
5. Remote access.
6. Mission Control.
7. Finish.

Required steps show as complete or needing action. Remote access is optional
unless your deployment requires it.

## Pages

| Page           | Use it for                                                               |
| -------------- | ------------------------------------------------------------------------ |
| Status         | Setup progress, access URLs, services, and telemetry.                    |
| MAVLink        | Flight-controller connection, baud, heartbeat state, and WebSocket URL.  |
| Video          | Camera or receiver state, WHEP URL, recording state, and link stats.     |
| Network        | Hotspot, LAN, USB tether, mDNS, Ethernet, WiFi client, and modem state.  |
| Remote Access  | Cloudflare Tunnel token entry, tunnel health, and public URLs.           |
| Ground Station | Pairing, WFB-ng receiver, uplink, display, controller, and role handoff. |
| System/Logs    | Services, recent logs, package version, and support summary.             |
| Advanced       | Factory reset, config import/export, and recovery actions.               |

## Cloudflare remote access

Remote access is optional. If you use Cloudflare Tunnel, paste either the raw
tunnel token or the install command Cloudflare gives you.

The agent extracts the token, stores it in the configured secret path, enables
Cloudflare remote access, and reports tunnel health. The token is not shown again
after submission.

## API

The setup webapp reads:

```text theme={"theme":{"light":"github-light","dark":"github-dark"}}
GET /api/v1/setup/status
```

It returns the same setup status used by `ados status --json`, Mission Control,
Android handoff, and support tooling.

Cloudflare setup posts to:

```text theme={"theme":{"light":"github-light","dark":"github-dark"}}
POST /api/v1/setup/remote-access/cloudflare
```

## Mission Control handoff

After local setup, open ADOS Mission Control from the setup page or from the URL
shown by `ados`. Mission Control can also show the setup status and reopen the
local setup webapp from the Hardware tab.
