RC3 Template
Fleet overview
Second anchor template — group / swarm command. Composes the platform roster, aggregated comms, group-scope autonomy, group-scope safety, and an active-platform pane that drills into the selected row with video tile + platform detail.
Design principles applied
The roster's Ember-marked active row and the identity rule's `ACTIVE` cell anchor the operator's spatial sense of which platform they are looking at — across a fleet where the same command word means different things to different platforms.
The aggregated comms strip sits at the top, surfacing fleet health (linked count, percent healthy, degraded and lost counts) before the operator even scans the roster. Per-platform health is then in the roster row itself.
Swarm-scope safety actions anchor the bottom-right of the canvas. Recall Swarm and Suspend remain one tap away regardless of which platform the operator is inspecting.
Three regions: identity + aggregated comms (chrome), roster + active-platform pane (scanning), group autonomy + safety (command). Each region carries one role; nothing crosses chunk boundaries.
Preview
View at viewport scaleClick a roster row to select that platform — the active-platform pane updates with the new source, telemetry, and feed. UAV-04 is in `lost` state; selecting it surfaces the NO SIGNAL overlay on the video tile.
Code
One file composing six organisms. Copy it and substitute your platform data source and your real video / map engine.
import { FleetOverview } from "@/templates/rc3/fleet-overview";
export default function YourFleetView() {
return <FleetOverview />;
}Notes
What's customisable
- The fleet roster — pass your real platforms with their link, signal, battery, and autonomy state. The roster handles selection state via
onSelect - The group autonomy ladder — pass your own
rungsarray. Group scope uses the same MANUAL / SUPERVISED / DELEGATED / AUTONOMOUS vocabulary as platform scope; the scope is already established by the header - The video placeholder — substitute your stream player (WebRTC, RTSP, HLS) per feed via VideoTile's children slot
- Platform detail fields — position, heading, speed, vertical, mission step, operator, last contact. Each section renders only when its prop is passed, so drop any field the operator doesn't need at this scope. The vertical label adapts to the platform's domain (ALT / ELEV / DEPTH)
- Roster label — set to the operational group name (`PERIMETER WATCH`, `ECHELON BRAVO`, etc.)
What's intentionally fixed
- The identity rule at the top — every RC3 surface carries it
- Three-region layout — aggregated comms (top chrome), roster + active pane (scanning), group autonomy + safety (command). Each chunks one role
- Aggregated comms at the top — fleet health surfaces before per-platform scanning
- Safety scope is swarm-wide — Recall Swarm / Suspend. Per-platform safety belongs in a platform-detail surface (the master-detail companion to roster)
- C3 dark mode — operator-canonical regardless of docs-site mode
RC3 organisms used
Platform roster, Comms / health strip (aggregated swarm view), Autonomy mode selector (swarm scope), Safety actions (swarm scope), Video tile, and Platform detail (master-detail companion to the roster — surfaces comms, telemetry, mission, and last contact for the active platform). Six organisms total.