Where's That Plane Going? A simple Rust web app to show details of nearby aircraft
1.8K
✈️ Where's That Plane Going?
A simple Rust and Rocket web app to show details of any planes in the sky within a given radius of your location, using data from the FlightAware AeroAPI. Perfect to quickly find where a plane you spot in the sky at home is going.
A re-implementation of the original NodeJS wtpg in Rust.
Details of flights are cached locally to reduce API usage, and new data is only fetched from the API when the Update Flights button is clicked.
The project can be run on a Raspberry Pi as a Docker container, serving the app
to your local network. Docker images are available for linux/amd64 and
linux/arm/v7.
The project is intended to be run in a Docker container. The latest image is
available from Docker Hub, as
tti0/wtpg-rs:latest, or with a specific version number (e.g.
tti0/wtpg-rs:2.0.0).
Use docker run or with Docker Compose, making sure to expose container port
8000 (the web app is available on this port via HTTP), and setting the correct
environment variables, as below.
docker run commandThis command will start a new wtpg-rs container, fetching the image from Docker Hub if needed, with the web server running on host port 8000. You will need to set the environment variables in the command, however.
docker run -p 8000:8000 -e AEROAPI_KEY=YOUR_API_KEY -e LAT=YOUR_LATITUDE -e LONG=-YOUR_LONGITUDE -e RADIUS_NM=30 tti0/wtpg-rs:latest
All environment variables are mandatory; the app will not start without them being set.
| Variable | Description | Default value |
|---|---|---|
| AEROAPI_KEY | String: API key for FlightAware AeroAPI | |
| LAT | Float: Latitude of point around which the app searches for flights, as a signed float (e.g. 2° S = -2, 4° N = 4) | |
| LONG | Float: Longitude of point around which the app searches for flights, as a signed float (e.g. 2° W = -2, 4° E = 4) | |
| RADIUS_NM | Float: Diagonal radius of a square (in nautical miles) centered on (LAT, LONG) within which the app will search for flights |
git clone https://gitlab.com/tti0/wtpg-rs.git
cd wtpg
cargo run
docker build --tag tti0/wtpg-rs:testing .
docker run -p 8000:8000 -e AEROAPI_KEY=YOUR_API_KEY -e LAT=YOUR_LATITUDE -e LONG=-YOUR_LONGITUDE -e RADIUS_NM=30 tti0/wtpg-rs:testing
(replacing x.y.z with the release version number, and COMMIT_SHA with the
Git commit SHA of the release commit)
git tag vx.y.z COMMIT_SHA
docker build --push --platform linux/arm/v7,linux/amd64 --tag tti0/wtpg-rs:x.y.z --tag tti0/wtpg-rs:latest .
This project is Copyright (c) tti0 2025, and licenced under the MIT License.
Please see LICENCE for full details.
Content type
Image
Digest
sha256:8a1a42ec9…
Size
68.4 MB
Last updated
11 months ago
docker pull tti0/wtpg-rs