The application allows users to monitor a specified aircraft.
Determine his status & publish accordingly to Nostr.
No API keys needed. Simple setup.
git clone https://github.com/gourcetools/NostrAirTracker
cd ./NostrAirTracker
./INSTALL.sh
./SETUP.sh
./START-CRAWLER.sh
And if you want to publish stuff to nostr, run
./START-PUBLISHER.sh
NostrAirTracker
├── config
│ ├── ICAO-ID.txt ICAO id that we will track
│ ├── NOSTR-HEX-PRIVKEY.txt nostr key that we will use to publish
│ └── PUP-BROWSER-LOCATION.txt path to the browser Puppeteer will use to crawl
├── data
│ └── airports.dat airports locations used to determine where the plane is
├── INSTALL.sh script to install node and python stuff
├── SETUP.sh script to setup ICAO-ID, PRIVKEY and BROSWER LOCATION
├── src
│ ├── combine.py script to combine screenshots
│ ├── crawled-position-to-airport.py script to convert position to airport name
│ ├── crawl-position.js script to crawl position
│ ├── crawl-speed-altitude-loop.js MAIN SCRIPT to to crawl data and determine plane status
│ ├── nostr-publish-loop.sh PUBLISHING SCRIPT that publish when status change
│ └── screenshot.js script to take 2 screenshoots: one far away, one zoomed in
├── START-CRAWLER.sh script to start the main crawler loop quickly.
└── START-PUBLISHER.sh script to start the main publisher loop quickly.
- 📡 Crawl: - Speed - Altitude - LastSeen - LAT & LONG (Position)
- 🧠 Determine:
- Plane status based on last data and freshly crawled data.
- Airport name based on
LAT
&LONG
- 📢 Send status update to nostr network. | `KIND: 1
- 📷 Take screenshoots.
- Post screenshoots with status update.
- Simple shell Menu.
- Use tor for crawling to avoid being blocked in the future.
- Remove completely nostr-publisher.sh and put it inside the main loop with settings in the main menu for publishing.
- Shell menu.
- Support for more relays, import relays list from a file in config folder instead of hardcoded variables.
- Written by me.
-
node
-
npm
-
python
-
pip
-
nostril
: https://github.com/jb55/nostril
Telegram: https://t.me/bitpaint
Twitter: https://twitter.com/bitpaintclub
0000005cc4586681ad8e7f4b75436fb7904b0e34ff072bb3406ddb90226d7eab
npub1qqqqqhxytpngrtvw0a9h2sm0k7gykr35lurjhv6qdhdeqgnd064swghgx4