Polish project for public release
- Add requirements.txt with Python dependencies - Add MIT LICENSE file - Add screenshot for README - Expand README with better documentation: - Quick start with git clone - Configuration example - Compatible receivers list - Custom backgrounds section - Credits section - Update CONFIG.md: - Fix Quick Start checklist (add pip install step) - Add systemd service instructions for auto-start - Remove CLAUDE.md from documentation list (dev-only file) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
63
CONFIG.md
63
CONFIG.md
@@ -217,8 +217,61 @@ All aircraft sprites should face **right (east)** - the code flips them automati
|
||||
|
||||
## Quick Start Checklist
|
||||
|
||||
1. [ ] Edit `config.json` with your receiver IP (or leave as AUTO)
|
||||
2. [ ] Set your location name, latitude, and longitude
|
||||
3. [ ] Replace `north.png`, `east.png`, `south.png`, `west.png` with your local views
|
||||
4. [ ] Start the server: `python3 server.py`
|
||||
5. [ ] Open browser to `http://your-server-ip:2001`
|
||||
1. [ ] Install dependencies: `pip install -r requirements.txt`
|
||||
2. [ ] Edit `config.json` with your receiver IP (or leave as AUTO)
|
||||
3. [ ] Set your location name, latitude, and longitude
|
||||
4. [ ] (Optional) Add custom backgrounds to `backgrounds/custom/` and set `"theme": "custom"`
|
||||
5. [ ] Start the server: `python3 server.py`
|
||||
6. [ ] Open browser to `http://your-server-ip:2001`
|
||||
|
||||
---
|
||||
|
||||
## Running as a Service (Auto-Start)
|
||||
|
||||
To run Pixel-ADSB automatically on boot, create a systemd service:
|
||||
|
||||
### 1. Create the service file
|
||||
|
||||
```bash
|
||||
sudo nano /etc/systemd/system/pixel-adsb.service
|
||||
```
|
||||
|
||||
Add this content (adjust paths as needed):
|
||||
|
||||
```ini
|
||||
[Unit]
|
||||
Description=Pixel-ADSB Flight Tracker
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
WorkingDirectory=/path/to/pixel-view
|
||||
ExecStart=/usr/bin/python3 /path/to/pixel-view/server.py
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
StandardOutput=append:/var/log/pixel-adsb.log
|
||||
StandardError=append:/var/log/pixel-adsb.log
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
```
|
||||
|
||||
### 2. Enable and start the service
|
||||
|
||||
```bash
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable pixel-adsb
|
||||
sudo systemctl start pixel-adsb
|
||||
```
|
||||
|
||||
### 3. Check status
|
||||
|
||||
```bash
|
||||
sudo systemctl status pixel-adsb
|
||||
```
|
||||
|
||||
### 4. View logs
|
||||
|
||||
```bash
|
||||
tail -f /var/log/pixel-adsb.log
|
||||
```
|
||||
|
||||
21
LICENSE
Normal file
21
LICENSE
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2025 Allen Cross
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
97
README.md
97
README.md
@@ -2,54 +2,111 @@
|
||||
|
||||
A retro SNES-style side-view flight tracker that displays ADS-B aircraft data with custom pixel art sprites.
|
||||
|
||||

|
||||
|
||||
## Features
|
||||
|
||||
- Real-time aircraft tracking via ADS-B receivers
|
||||
- Custom pixel art sprites for 6 aircraft types
|
||||
- Animated sun and moon with accurate positions based on location
|
||||
- Weather visualization (clouds, rain/snow)
|
||||
- Directional view (N/E/S/W) with unique backgrounds
|
||||
- Custom pixel art sprites for 6 aircraft types (small prop, regional jet, narrow body, wide body, heavy, helicopter)
|
||||
- Animated sun and moon with accurate astronomical positions
|
||||
- Dynamic sky colors based on time of day
|
||||
- Weather visualization with cloud sprites
|
||||
- Directional view (N/E/S/W) with themed backgrounds
|
||||
- Auto-discovery of ADS-B receivers on your network
|
||||
- Canvas-based 10 FPS retro rendering
|
||||
|
||||
## Quick Start
|
||||
|
||||
```bash
|
||||
# Clone the repository
|
||||
git clone https://gitea.chops.one/allen/Pixel-ADSB.git
|
||||
cd Pixel-ADSB
|
||||
|
||||
# Install dependencies
|
||||
pip install aiohttp netifaces
|
||||
pip install -r requirements.txt
|
||||
|
||||
# Configure your location (required for weather and celestial positioning)
|
||||
# Edit config.json and set your lat/lon coordinates
|
||||
|
||||
# Start the server
|
||||
python3 server.py
|
||||
```
|
||||
|
||||
Access at http://localhost:2001 (or configured port in config.json)
|
||||
Access at http://localhost:2001
|
||||
|
||||
## Requirements
|
||||
|
||||
- Python 3.8+
|
||||
- ADS-B receiver providing SBS/BaseStation format on port 30003
|
||||
- ADS-B receiver providing SBS/BaseStation format on port 30003 (dump1090, readsb, etc.)
|
||||
- Modern web browser with Canvas support
|
||||
|
||||
## Documentation
|
||||
## Configuration
|
||||
|
||||
- [CONFIG.md](CONFIG.md) - Configuration options and background themes
|
||||
- [CLAUDE.md](CLAUDE.md) - Development guidance
|
||||
Edit `config.json` to customize your installation:
|
||||
|
||||
## Aircraft Types
|
||||
```json
|
||||
{
|
||||
"receivers": "AUTO",
|
||||
"receiver_port": 30003,
|
||||
"location": {
|
||||
"name": "My Location",
|
||||
"lat": 36.2788,
|
||||
"lon": -115.2283
|
||||
},
|
||||
"web_port": 2001,
|
||||
"theme": "desert"
|
||||
}
|
||||
```
|
||||
|
||||
| Type | Description |
|
||||
|------|-------------|
|
||||
| Small Prop | Light aircraft, N-prefix callsigns |
|
||||
| Regional Jet | Regional carriers |
|
||||
| Narrow Body | 737/A320 class |
|
||||
| Wide Body | 777/787 class |
|
||||
| Heavy | 747/A380 class |
|
||||
| Helicopter | Low altitude, slow speed |
|
||||
**Important:** Set your `location.lat` and `location.lon` for accurate weather and sun/moon positioning.
|
||||
|
||||
See [CONFIG.md](CONFIG.md) for full configuration options including custom backgrounds and running as a service.
|
||||
|
||||
## Controls
|
||||
|
||||
- **Arrow Keys / A/D**: Rotate view direction
|
||||
- View cycles through North, East, South, West
|
||||
- Click aircraft in sidebar to highlight
|
||||
|
||||
## Aircraft Types
|
||||
|
||||
| Type | Detection |
|
||||
|------|-----------|
|
||||
| Helicopter | Low altitude + slow speed |
|
||||
| Heavy (747/A380) | High altitude or specific callsigns |
|
||||
| Wide Body | Very high altitude/speed |
|
||||
| Narrow Body | Default commercial |
|
||||
| Regional Jet | Regional carrier callsigns or lower altitude |
|
||||
| Small Prop | N-prefix callsigns or very low/slow |
|
||||
|
||||
## Custom Backgrounds
|
||||
|
||||
Create backgrounds for your location:
|
||||
|
||||
1. Add 4 directional images to `backgrounds/custom/` (north.png, east.png, south.png, west.png)
|
||||
2. Set `"theme": "custom"` in config.json
|
||||
3. Restart the server
|
||||
|
||||
See [CONFIG.md](CONFIG.md) for image specifications and tips.
|
||||
|
||||
## Running as a Service
|
||||
|
||||
To auto-start on boot, see the systemd service instructions in [CONFIG.md](CONFIG.md#running-as-a-service-auto-start).
|
||||
|
||||
## Compatible Receivers
|
||||
|
||||
Works with any receiver providing SBS/BaseStation format on port 30003:
|
||||
- dump1090 / dump1090-fa / dump1090-mutability
|
||||
- readsb
|
||||
- ADS-B Exchange feeders
|
||||
- FlightAware PiAware
|
||||
- Any SBS1 compatible receiver
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
MIT License - see [LICENSE](LICENSE) for details.
|
||||
|
||||
## Credits
|
||||
|
||||
- Aircraft and environment sprites generated with AI assistance
|
||||
- Weather data from [Open-Meteo](https://open-meteo.com/) (free, no API key required)
|
||||
|
||||
2
requirements.txt
Normal file
2
requirements.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
aiohttp>=3.8.0
|
||||
netifaces>=0.11.0
|
||||
BIN
screenshots/screenshot.png
Normal file
BIN
screenshots/screenshot.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 262 KiB |
Reference in New Issue
Block a user