Open-source flight tracker
Live ADS-B aircraft positions, NEXRAD weather radar, turbulence forecasts, SIGMETs, PIREPs, and full flight plan search — all on an interactive CesiumJS globe. Free, open-source, and installable as a PWA.
Live Flight Tracking
ADS-B data from the OpenSky Network updates every 10–15 seconds, displayed on a fully interactive 3D globe with altitude-colored trails and data blocks.
Pan, zoom, and tilt a full CesiumJS globe. Switch between 2D and 3D views with nine map layers including satellite imagery, VFR sectionals, and IFR charts.
Real-time aircraft positions with altitude-colored trails, velocity vectors, and data blocks showing callsign, altitude, speed, and heading.
Search by flight number or natural language — "Delta from ATL to LAX today". See filed routes, decoded waypoints, flown tracks, and a timeline scrubber.
Airport markers with real-time FAA delay status, Class B/C/D airspace boundaries with 3D extrusion, VOR/NDB/DME navaids, and waypoint fixes.
Click any airport to see all aircraft currently en route to or from it. The map filters to show only matching flights, refreshing every 5 minutes.
Dark, light, or system theme with custom accent colors. Adjustable font sizes, trail modes, altitude exaggeration, weather opacity, and cloud-synced settings.
Weather & Turbulence
Layer NEXRAD radar, satellite imagery, turbulence forecasts, SIGMETs, AIRMETs, and pilot reports directly on the globe. All data refreshes automatically.
Composite reflectivity from the national NEXRAD network via the Iowa State Mesonet. Refreshes every 5 minutes with optional ground-clutter thinning.
Infrared satellite imagery from GOES (Band 13, 10.3 µm) showing cloud-top temperatures. Brighter areas indicate colder, higher cloud tops. Refreshes every 10 minutes.
Graphical Turbulence Guidance heatmap at the selected flight's cruise altitude, or the MAX (HI) composite. Optional 3D volumetric layers from FL180–FL420. Refreshes every 15 minutes.
Turbulence and convective SIGMETs plus G-AIRMET (TURB-HI/LO) boundaries rendered as semi-transparent 3D volumes with altitude extrusion. Refreshes every 5 minutes.
Pilot reports of turbulence displayed as color-coded dots (smooth → extreme) at reported altitude. Click any dot to read the full report. Refreshes every 5 minutes.
Real-time delay information from the FAA — ground delay programs, ground stops, arrival/departure delays, and closures. Airport markers color-coded by delay severity.
FAQ
Yes. The web app is completely free and open-source. You can use it directly in your browser at flightradar3d.birgefuller.com/app with no account required. Aircraft tracking works immediately; flight plan search requires a free FlightAware API key.
Aircraft positions come from the OpenSky Network, a community-driven ADS-B receiver network. Flight plan data (routes, waypoints, aircraft type) comes from FlightAware AeroAPI. Weather data comes from the FAA Aviation Weather Center and Iowa State Mesonet.
Basic aircraft tracking works without any API key (anonymous OpenSky access). For higher rate limits, you can register for free at opensky-network.org. Flight plan search and airport flight filtering require a FlightAware AeroAPI key from flightaware.com/aeroapi. Enter your keys in Settings → API Credentials.
Yes. 3D Flight Radar is a Progressive Web App (PWA) that can be installed on any device. On mobile, tap "Add to Home Screen" in your browser. It also runs natively on Android via Capacitor — build from source with npm run build:mobile.
The app includes six weather layers that can be toggled independently:
Type a flight number (e.g. UAL123) or use natural language like Delta from ATL to LAX today in the search bar and press Enter. You can search by origin/destination airports, airline name, date, and time window. Airport codes (IATA or ICAO) and city names both work.
Yes. Sign in with your Google account in Settings → Cloud Sync to automatically save and restore your preferences (theme, colors, toggles, saved view) across all your devices. API credentials are never synced — they stay local to each device.
Nine base map layers: Simple (dark/light), Simple with Labels, Gray Canvas, Satellite (ESRI), OpenStreetMap, Topographic (OpenTopoMap), VFR Sectional (multi-zoom WAC/Sectional/TAC), IFR Low Enroute, and IFR High Enroute. The map automatically switches between dark and light variants based on your theme.
Aircraft positions update every 10–15 seconds (depending on zoom level). NEXRAD radar and weather hazards (SIGMETs, AIRMETs, PIREPs) refresh every 5 minutes. GOES IR satellite refreshes every 10 minutes. GTG turbulence forecast refreshes every 15 minutes. FAA airport delays refresh every 15 minutes.
The app shell (HTML, CSS, JS) is cached by the service worker for instant loading. Map tiles are cached as you browse (up to 500 tiles). However, live aircraft data and weather overlays require an internet connection.
Get Started
No install required. Open 3D Flight Radar directly in your browser — works on desktop, tablet, and mobile.
Clone the repository and start the development server:
git clone https://github.com/birgefuller/jet.git
cd jet
npm install
npm run dev