See what's flying above you - live aircraft radar for your terminal
Project description
TermRadar
See what's flying above you - without leaving your terminal.
TermRadar is a lightweight live aircraft radar for developers, programmers, and aviation enthusiasts.
You're coding, you hear an aircraft overhead, or spot something from the window. Instead of opening a browser or reaching for a flight-tracking app, open a terminal and run:
termradar
You get a live radar centered on your location: nearby callsigns, distance, bearing, speed, altitude, and route info when available. Use it for the quick answer, then jump to another tracker when you want deeper details.
One radar engine. Multiple displays.
The core is display-agnostic. Today: a polished terminal UI. Planned: Raspberry Pi fullscreen and small displays.
Quick start
pip install termradar
termradar
From source:
git clone https://github.com/rusty3699/termradar.git
cd termradar
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .
termradar
First run: enter a location, pick a geocoding result, set radius and refresh. Later runs reuse saved settings. Press Ctrl+C to exit.
Config: ~/.config/termradar/config.toml on Linux (platformdirs on macOS and Windows — see ARCHITECTURE.md).
What you get
| Available now | Planned |
|---|---|
| Live terminal radar (default 5 s refresh) | Raspberry Pi fullscreen display |
| Numbered radar markers + top-five nearby list | OLED / e-paper displays |
| Closest-aircraft detail panel | Local ADS-B receivers |
| adsb.lol live aircraft (default) | Alerts and notifications |
| ADSBDB route/airline enrichment | Web UI |
| Nominatim geocoding, local timezone | |
OpenSky via --aircraft-provider opensky |
Requirements: Python 3.11+, network access. Works on Linux, macOS, Windows, and Raspberry Pi.
Usage
termradar --location "Andheri, Mumbai" # temporary location (this run only)
termradar --radius 25 # search radius in km
termradar --refresh 10 # refresh interval (min 5 s)
termradar --aircraft-provider opensky # OpenSky instead of adsb.lol
termradar --enrichment-limit 10 # max aircraft to enrich per scan
termradar --reset-location # re-run setup
termradar --version
termradar --help
| Setting | Default | Allowed |
|---|---|---|
| Refresh | 5 s | 5-300 s |
| Radius | 15 km | 1-250 km |
| Aircraft source | adsb.lol | adsblol or opensky |
| Enrichment | 10 nearest | --enrichment-limit |
Provider details and internal limits: docs/DATA_PROVIDERS.md
How it works
each refresh (every 5 s by default):
1. Fetch aircraft near you → adsb.lol
2. Distance and bearing from you
3. Enrich nearest (cache miss only) → ADSBDB
4. Draw radar + aircraft panels
setup only (not each refresh):
Geocoding → Nominatim
Data sources: adsb.lol (aircraft), ADSBDB (routes/airlines), Nominatim (geocoding)
Documentation
| Doc | What it covers |
|---|---|
| CHANGELOG.md | Release history |
| ARCHITECTURE.md | Design, UI layout, code boundaries |
| DATA_PROVIDERS.md | APIs, internal limits, caching |
| ROADMAP.md | What's next |
| DEVELOPMENT.md | Tests, lint, packaging |
License
MIT - see LICENSE.
Made with <3 Anish
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file termradar-0.3.1.tar.gz.
File metadata
- Download URL: termradar-0.3.1.tar.gz
- Upload date:
- Size: 210.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d4ae14c9ae52119b73cf1b340377c07b3f10d5d87de6e17c56ed49da4bbdf18
|
|
| MD5 |
e7dbb4d0bf5c7ea53c193b49781d768f
|
|
| BLAKE2b-256 |
10689e030f802d594cbe523f35a277922e61daf007b68b55e3b0bf24342a6fa6
|
File details
Details for the file termradar-0.3.1-py3-none-any.whl.
File metadata
- Download URL: termradar-0.3.1-py3-none-any.whl
- Upload date:
- Size: 35.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f18951b63a7bece748fba20fe141aecda2738eaadf2451a870223718d12eb07a
|
|
| MD5 |
d3735bc963ba34d1f6635fb4f32eabc5
|
|
| BLAKE2b-256 |
f0d2528dc9dcfb4c1043feb28f659c499937b633f45bd676bd8ab9e5cd8d19a9
|