Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gourcetools/NostrAirTracker
Aka elonjet | The application allows users to monitor the position, speed, and altitude of specified aircraft, then determine his status and publish accordingly to the Nostr Network.
https://github.com/gourcetools/NostrAirTracker
ads-b adsb adsbexchange adsbexchange-stats aircraft airport elonjet icao land nostr plane takeoff
Last synced: 24 days ago
JSON representation
Aka elonjet | The application allows users to monitor the position, speed, and altitude of specified aircraft, then determine his status and publish accordingly to the Nostr Network.
- Host: GitHub
- URL: https://github.com/gourcetools/NostrAirTracker
- Owner: gourcetools
- License: mit
- Created: 2023-03-16T15:35:20.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-05-19T16:26:23.000Z (over 1 year ago)
- Last Synced: 2024-04-18T12:24:12.717Z (8 months ago)
- Topics: ads-b, adsb, adsbexchange, adsbexchange-stats, aircraft, airport, elonjet, icao, land, nostr, plane, takeoff
- Language: JavaScript
- Homepage: https://nostr.band/npub1qqqqpza762tx3vjrxt7f94eyxej6z4h5yx4hlvy0mnq7r085hsfqtfyr5n
- Size: 2.83 MB
- Stars: 16
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-nostr - NostrAirTracker - Elonjet on Nostr (Tools / Client reviews and/or comparisons)
README
# NostrAirTracker
The application allows users to monitor a specified aircraft.
Determine his status & publish accordingly to Nostr.
No API keys needed. Simple setup.# ✔️ How to use NostrAirTracker?
```
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
```![image](https://user-images.githubusercontent.com/120996278/225669565-7d060b15-9440-42d8-ae37-b0ae8dc6e179.png)
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.``# Done:
- [x] 📡 Crawl:
- Speed
- Altitude
- LastSeen
- LAT & LONG (Position)
- [x] 🧠 Determine:
- Plane status based on last data and freshly crawled data.
- Airport name based on ``LAT`` & ``LONG``
- [x] 📢 Send status update to nostr network. | `KIND: 1
- [x] 📷 Take screenshoots.
- [x] Post screenshoots with status update.# Todo:
- [ ] 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.# Problems:
- Written by me.# ⚙️ Requirements:
- `node`
- `npm`
- `python`
- `pip`- `nostril` : https://github.com/jb55/nostril
# 🙋♂️ Need help?
### Telegram: https://t.me/bitpaint
### Twitter: https://twitter.com/bitpaintclub
### Nostr:
#### hex:
```
0000005cc4586681ad8e7f4b75436fb7904b0e34ff072bb3406ddb90226d7eab
```
#### npub:
```
npub1qqqqqhxytpngrtvw0a9h2sm0k7gykr35lurjhv6qdhdeqgnd064swghgx4
```
#### nip05:
```
[email protected]
```