Open-source project
wiedehopf/tar1090 avatar
wiedehopf/tar1090

tar1090: Improved Web Interface for readsb and dump1090-fa

Provides an improved webinterface for use with ADS-B decoders readsb / dump1090-fa

1,941 stars334 forksJavaScriptNOASSERTION

At a glance

What is it?
tar1090 adds a separate aircraft tracking interface to existing readsb or dump1090-fa installations on Raspberry Pi systems. It focuses on history, track selection, map display and browser configuration, but it is not a decoder replacement.
Who is it for?
tar1090 suits Raspberry Pi operators who already run readsb or dump1090-fa and want a configurable browser view without replacing their decoder. It is a poor fit for a standalone receiver installation, a system without apt, or operators who need supported decoder functionality rather than an added interface.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 4 days ago.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.

Editorial analysis

Why tar1090 exists beside readsb and dump1090-fa

tar1090 solves a presentation and interaction problem for people who already receive and decode aircraft transmissions. The README explicitly says that it provides an improved webinterface for the ADS-B decoders readsb and dump1090-fa. It is not intended to replace either decoder, and it does not stand alone as a complete receiving system. A user still needs an existing decoder installation, usually associated with a receiver such as an RTL-SDR based setup, although the repository description does not define the supported receiver configuration.

The project is aimed at operators who want more control over how aircraft appear in a browser. Its documented features include adjustable history, a faster Show All Tracks action when many planes are present, multiple maps, a dimmed or darkened map, selection of multiple aircraft, and optional callsign labels. The history feature is especially relevant to users who want to inspect how a track changes over time rather than only view the current aircraft state.

The distinction between an interface and a decoder matters for adoption. tar1090 does not replace the data source. Its value depends on an existing readsb or dump1090-fa installation and on the web service path exposed by that installation. dump1090-mutability installations are also expected to work, but the README warns that aircraft details will be limited. This is an explicit compatibility trade-off, not evidence that every decoder feature is exposed equally.

The browser interface and decoder data path

Based on the repository layout, tar1090 consists of a JavaScript interface under `html/`, a systemd service definition, installation and removal scripts, web server configuration files and shell logic used to expose aircraft information. The README does not describe a proprietary decoding pipeline inside tar1090. Instead, the project adds another webinterface alongside readsb or dump1090-fa and reads the aircraft information made available by that installation.

The browser entry point is `/tar1090`. A coverage-oriented view is available at `/tar1090/?pTracks`, which the README suggests for checking whether the receiver has a usable view of aircraft coverage. The default interface includes controls for history and tracks. The documentation says that Show All Tracks is much faster than the original interface when many planes are displayed, although it does not publish a benchmark or define the threshold for many planes.

Configuration is split between the service side and the browser side. `/etc/default/tar1090` controls history-related settings, including the interval and number of saved history files. The history duration is defined as interval multiplied by history_size. The browser configuration is `/usr/local/share/tar1090/html/config.js`, where settings are activated by removing the leading `//` from a line. The README mentions map dimming, callsign labels, multiple maps and multiple aircraft selection as interface behavior, but it does not document the complete set of keys in `config.js`.

Installing tar1090 on a Raspberry Pi

The documented installer assumes Raspbian, Debian or Ubuntu and uses `apt`. The README warns that it cannot guarantee that an existing Raspbian, Debian or Ubuntu installation will remain undisrupted. It also states that the install script will not work on systems without `apt`. Run the installer on the system that hosts the existing decoder and web server arrangement.

The installation command downloads the repository's `install.sh` and executes it with root privileges:

bash
sudo bash -c "$(wget -nv -O - https://github.com/wiedehopf/tar1090/raw/master/install.sh)"

After installation, open the address of the Raspberry Pi with the `/tar1090` path:

text
http://192.168.x.yy/tar1090

Replace `192.168.x.yy` with the Raspberry Pi address, as the README instructs. The browser should show the added tar1090 interface. The separate coverage URL is:

text
http://192.168.x.yy/tar1090/?pTracks

For local development, the repository documents cloning the repository, making changes and running the installer in test mode from the local directory:

bash
./install.sh test

The README does not describe a separate frontend build command, test suite command or Node.js installation procedure. The primary installation method is the shell installer, and the documented operating assumption is an apt-based Raspberry Pi or Debian-family system.

Configuring history and the web interface

The first configuration file controls retained history. The documented calculation is simple: the total duration in seconds equals the configured interval multiplied by `history_size`. Edit the file with `nano`, save with Ctrl-x, `y` and Enter, then restart the service so the change is applied.

bash
sudo nano /etc/default/tar1090
sudo systemctl restart tar1090

The browser interface has a separate configuration file:

bash
sudo nano /usr/local/share/tar1090/html/config.js

Lines beginning with `//` are inactive according to the README. Removing the leading `//` enables a setting. After saving, use Ctrl-F5 in the browser to reload the interface rather than relying on a normal cached page. The README also documents recovery from a broken interface configuration by deleting `config.js` and running the installation script again:

bash
sudo rm /usr/local/share/tar1090/html/config.js

That recovery command does not restore the file immediately. It requires the installation script to be run again. This is a useful fallback, but it also means the configuration file is not treated as an immutable system file. Users should record any local changes before removing it.

Receiver location is not configured in tar1090. The README says that it is set in the decoder, meaning readsb or dump1090-fa, and directs users to the decoder installation documentation for that setting.

External links, UAT and multiple instances

tar1090 includes optional links to external aircraft information services. The README provides commands to enable or disable `flightawareLinks` and `shareBaseUrl` in `config.js`. For example, the documented enable command is:

bash
sudo sed -i -e 's?.*flightawareLinks.*?flightawareLinks = true;?' /usr/local/share/tar1090/html/config.js

The documented share-link example points to `https://globe.adsbexchange.com/`. These settings are optional. If the instance is not located at `/tar1090`, the README says to edit the `config.js` in the appropriate HTML folder for multiple instances.

UAT or 978 MHz display is also optional. The configuration example uses `/etc/default/tar1090`:

bash
ENABLE_978=no
URL_978="http://127.0.0.1/skyaware978"

For a UAT-only setup where tar1090 and `skyaware978` run on the same Pi, the README gives this instance configuration:

bash
echo /run/skyaware978 tar1090 | sudo tee /etc/default/tar1090_instances

It then instructs the user to run the installation script. The README states that UAT traffic will be displayed as ADS-B and that this cannot be avoided. That limitation matters when interpreting the displayed aircraft type and for anyone expecting separate UAT semantics.

For another decoder data directory, such as `/run/combine1090`, the documented command downloads and runs the installer with that directory as an argument:

bash
wget -nv -O /tmp/install.sh https://github.com/wiedehopf/tar1090/raw/master/install.sh
sudo bash /tmp/install.sh /run/combine1090

These features show that tar1090 can sit in several network and decoder arrangements, but each arrangement introduces path, instance and decoder compatibility details that must be checked.

Limits, licensing and maintenance signals

The strongest limitation is scope. tar1090 adds a webinterface and does not replace readsb or dump1090-fa. A user without an existing decoder has not installed a complete ADS-B decoding solution through these commands. dump1090-mutability support is expected, but aircraft details are limited. The installer also assumes apt-based systems and does not support systems without apt, so it is not a portable installation method for every environment.

The README labels the project NO WARRANTY and points to the LICENSE for details. The repository metadata identifies the license as Other, with a custom licence that GitHub cannot classify. That means a potential adopter must read `LICENSE` before redistribution or deployment. This article does not interpret the legal terms or provide legal advice. The same warning applies to the installer because the project says it strives not to disrupt an existing Raspbian, Debian or Ubuntu installation but cannot guarantee that outcome.

The repository is not archived. Its last push was on 2026-09-29, so there is a recent repository activity signal, but the project has no GitHub releases. The README says the commit log is the only form of change log. That gives users a place to inspect changes, yet it does not provide the release notes or versioned upgrade notes that a release-managed project might offer. Updates use the same command as installation, and the README states that configuration should be preserved. Preservation is documented, but it should still be checked after an update, especially when `config.js` has local edits.

The tar1090 maintenance decision

Choose tar1090 if you already operate readsb or dump1090-fa on an apt-based Raspberry Pi, Debian or Ubuntu system and want a separate browser interface with adjustable history, track display and optional map and label settings. It is particularly relevant when the existing decoder can expose the expected data path and when operating a local browser interface is enough.

Do not choose it as a replacement decoder, a standalone receiver installation or a portable cross-platform frontend installer. Also avoid assuming full aircraft detail support with dump1090-mutability, since the README explicitly limits that case.

Before the first update, inspect the `LICENSE`, note the existing `/etc/default/tar1090` and `/usr/local/share/tar1090/html/config.js` contents, confirm the decoder installation and verify that `/tar1090` is reachable. After an update, confirm that the interface loads and that history settings survived. The update command is documented, but the project provides no GitHub releases, so the repository commit log is the only documented change record.

Editorial conclusion

tar1090 suits Raspberry Pi operators who already run readsb or dump1090-fa and want a configurable browser view without replacing their decoder. It is a poor fit for a standalone receiver installation, a system without apt, or operators who need supported decoder functionality rather than an added interface. Verify the custom LICENSE, the compatibility of the existing decoder, the desired history interval and size, and the `/tar1090` web path before updating a working installation.

Frequently asked questions

Does tar1090 replace readsb or dump1090-fa?

No. The README says tar1090 is an additional webinterface for an existing readsb or dump1090-fa installation, not a replacement for either decoder.

What operating systems does the tar1090 installer support?

The install script assumes Raspbian, Debian or Ubuntu and uses `apt`. The README says it will not work on systems without `apt`.

How do I update tar1090 and keep its configuration?

The README uses the installation command as the update command and states that configuration should be preserved. The interface configuration is stored in `/usr/local/share/tar1090/html/config.js`, while history settings are in `/etc/default/tar1090`.

Official sources

  1. Issues
  2. README
  3. wiedehopf/tar1090 on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/wiedehopf-tar1090.svg)](https://hysenlabs.com/projects/wiedehopf-tar1090)

Was this useful?