by watson

watson / airplanejs

πŸ“‘ ✈️ App that picks up ADS-B radio signals from airplanes and plots them in real time on a map in y...

446 Stars 44 Forks Last release: Not found MIT License 69 Commits 19 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:


πŸ“‘ ✈️ An SDR app written in JavaScript that picks up ADS-B radio signals from airplanes and plots them in real time on a map in your browser βœ¨πŸ’πŸš€βœ¨

Map with aircrafts plottet

Build status js-standard-style



This software requires an RTL-SDR USB dongle with an RTL2832U chip in order run. Here's a few that I like:

Disclaimer: I'm trying out the Amazon Affiliate Program to support my free open source work. So if you decide to buy an RTL-SDR dongle using one of the links above I'll be grateful (the search link should work as well).

For more information about buying RTL-SDR dongles, check out the blog buyers guide.


This software also requires that you have Node.js and librtlsdr installed on your system. You can install librtlsdr with most package managers which will ensure you have the right dependencies.

Homebrew (macOS):

brew install librtlsdr

Debian based Linux distros:

apt-get install librtlsdr-dev


The easiest way to run AirplaneJS is using the

command that you'll have availble if you have Node.js 8+ installed. Simply plug in your RTL-SDR dongle and type:
npx airplanejs

This will download and run AirplaneJS without any hassle.

When AirplaneJS successfully have connected to the USB dongle, your default browser should automatically open to http://localhost:3000.

Alternatively install the module globally like in the old days:

  1. Install AirplaneJS globally:
    npm install airplanejs -g
  2. Run AirplaneJS:


The following options are available when running

  • --help
    - Show help (alias:
  • --version
    - Output AirplaneJS version (alias:
  • --device 
    - Select RTL dongle (alias:
    , default:
  • --frequency 
    - Set custom frequency (alias:
    , default:
  • --gain 
    - Set custom tuner gain (alias:
  • --auto-gain
    - Disable manual tuner gain (default: off)
  • --enable-agc
    - Use Automatic Gain Control (default: off)
  • --port 
    - Set custom HTTP server port (alias:
    , default:
  • --no-browser
    - Disable automatic opening of default browser



We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.