The Operations module must be enabled for your workspace. You also need the appropriate operations
permissions. Contact your workspace administrator if you cannot access these features.
You need a valid authenticated session. The display requires at least one aircraft in airborne
state. If tracking data is not available, the display falls back to interpolated positions.
Navigate to the In-Flight Display
Open the Operations sidebar and click In-Flight Display under the Fleet group. The page loads full-screen with no table headers or navigation chrome — the entire viewport is the display.Understand the three display zones
The page is divided into three stacked zones that each serve a distinct purpose.Zone 1 — Flight hero arc
The top section (240 px tall) is a dark panel showing the route as a styled SVG arc on a deep navy background.- Origin ICAO code — large monospace text on the left, with the airport name and local departure time beneath it.
- Destination ICAO code — large monospace text on the right, with the airport name and local scheduled arrival time beneath it.
- Arc path — a quadratic bezier curve spanning the width of the panel. The portion already traveled is rendered as a dimmer dashed blue line; the remaining portion is a bright solid blue line. The split point moves as the flight progresses.
- Aircraft marker — an orange aircraft icon positioned on the arc at the current progress point, rotated to match the arc’s tangent direction.
- Registration and type code — displayed in the top-left corner of the panel.
- LIVE badge — a green badge in the top-right corner appears when the display has an active SSE connection to the flight tracker. When the connection is absent, the badge is hidden and the display operates in demo mode using loader data.
departure_at and arrival_at timestamps, clamped between 0 and 1. When live tracking data is connected, the aircraft marker position reflects real-world progress rather than scheduled time.
Zone 2 — Map panel and altitude profile
The middle section fills the remaining vertical space between the hero arc and the stats bar. It is split horizontally:- Left 60% — satellite map: A MapLibre satellite map showing the aircraft’s current position, the route line between origin and destination, and airport markers. The map centers on the active aircraft. When multiple flights are airborne, all aircraft appear on the map simultaneously; click a marker to follow a specific aircraft using the
?follow=query parameter. - Right 40% — altitude profile: A chart showing the aircraft’s current altitude against a standard cruise profile curve. The current altitude is sourced from live tracking data when connected; otherwise it falls back to the value stored in the most recent
flight_trackingrow from the loader.
Zone 3 — Eight-stat data bar
The bottom bar (80 px tall) displays eight performance values in a monospace grid, each labeled in blue uppercase text with the value in white below it.| Label | Full Name | How it is computed |
|---|---|---|
| ALT | Altitude | Current altitude from tracking data, displayed as a flight level (e.g., FL350 for 35,000 ft). |
| G/S | Ground Speed | Ground speed in knots, sourced directly from tracking data. |
| TAS | True Airspeed | Estimated true airspeed in knots: GS × (1 + 0.02 × alt_kft). Applies the rule of thumb that TAS increases approximately 2% per 1,000 ft above sea level. |
| HDG | Magnetic Heading | Current magnetic heading in degrees, sourced from tracking data, rounded to the nearest whole degree. |
| OAT | Outside Air Temperature | Computed via International Standard Atmosphere. In the troposphere (below FL360 / 11 km): 15°C − 6.5°C/km. In the stratosphere (FL360 and above): isothermal at −56.5°C. |
| ETA | Time Remaining | Countdown to scheduled arrival expressed as hours and minutes (e.g., 1h 23m or 45m). Derived from arrivalAt − nowMs, floored at zero. |
| DIST | Distance Remaining | Nautical miles remaining: leg_distance × (1 − progress). Displays --- when no leg distance is stored. |
| DEST | Destination Local Time | Scheduled arrival time formatted in the viewer’s browser timezone (e.g., 3:42 PM). |
Select an aircraft when multiple flights are airborne
When your workspace has more than one aircraft inairborne state, a slim selector bar appears above the hero arc showing the current aircraft registration and an index counter (e.g., N456PC · 2 / 3). Use the left and right arrow buttons to step through airborne aircraft. All zones update to reflect the selected aircraft.
Understand data sources and priority
The display pulls flight data from two sources and combines them:-
Server loader (initial render) — On page load, the loader queries
dispatch_statusfor all aircraft in your workspace withstate = 'airborne', joins againstaircraftandtrip_legsto get origin, destination, and scheduled times, and fetches the most recent row fromflight_trackingfor each aircraft. This data is serialized into the initial HTML. -
Live SSE tracking (client) — After page load, the
useFlightTrackerhook opens a server-sent events connection scoped to your workspace. When a position update arrives for the active aircraft’s registration, it immediately overrides the loader snapshot for altitude, speed, and heading. The LIVE badge appears when this connection is established.
arrivalAt timestamp.
Progress refreshes on a 10-second interval on the client so that the arc marker and time-based stats remain current even without a live tracking connection.
Understand the fallback behavior
If no aircraft is inairborne dispatch state, the loader falls back to trips in active status. For those trips, position is interpolated linearly between origin and destination coordinates based on elapsed fraction of the scheduled flight time, with a default altitude of 35,000 ft and speed of 400 kt when no flight_tracking row exists.
If neither airborne dispatch records nor active trips are found, the page shows a minimal empty state reading No Active Flights. The display will update automatically the next time the page is loaded after a dispatch state change.
The fallback to active trips is intended for demo environments and partial integrations. Under 14
CFR Part 135, dispatchers should ensure that aircraft dispatch state transitions (airborne,
landed) are recorded in the dispatch system as close to actual wheels-off and wheels-on times as
possible to keep the display accurate.
Monitor a flight from initial setup to landing
Before the flight appears on the In-Flight Display, the trip must have been released through the normal dispatch workflow. Verify the trip is in
dispatched status from the Dispatch Dashboard or the trip detail page.When wheels-off is confirmed, use the Mark Departed action on the Dispatch Dashboard or the trip detail page to transition the trip to
active status and set the dispatch_status record to airborne. This is the trigger that causes the flight to appear on the In-Flight Display.Navigate to Operations > Fleet > In-Flight Display. The hero arc, map, altitude profile, and stats bar all populate with data from the active flight. Confirm the LIVE badge is visible in the top-right corner of the hero arc if your tracking integration is active.
Watch the arc marker advance from left to right as the flight progresses. Use the stats bar to spot-check altitude and ground speed against expected cruise values. The ETA countdown updates every 10 seconds. If the display is on a shared screen, no interaction is required — the page runs continuously.
Related
Use the Dispatch Dashboard
Real-time dispatcher workstation with KPI strip, fleet map, weather, and conflict detection.
Use the Dispatch Board
Assign trips to aircraft with drag-and-drop and manage the trip queue.
Create a Trip
Full walkthrough of the trip creation wizard from request to release.
Aircraft Statuses
What each aircraft status means for dispatch availability and display behavior.