Rename project references from Pixel View to ADS-Bit
Rename pixel-view.js to ads-bit.js, rename PixelADSB class to ADSBit, and update all documentation and code comments to use ADS-Bit branding consistently throughout the project. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
|
|||||||
|
|
||||||
## Project Overview
|
## Project Overview
|
||||||
|
|
||||||
Pixel View is a retro SNES-style side-view flight tracker that displays ADS-B aircraft data with custom pixel art sprites. It's a standalone sub-project within the larger IceNet-ADS-B system.
|
ADS-Bit is a retro SNES-style side-view flight tracker that displays ADS-B aircraft data with custom pixel art sprites.
|
||||||
|
|
||||||
## Running the Server
|
## Running the Server
|
||||||
|
|
||||||
@@ -28,12 +28,13 @@ Access at http://localhost:{web_port} (configured in config.json)
|
|||||||
- Parses SBS/BaseStation format messages from receivers
|
- Parses SBS/BaseStation format messages from receivers
|
||||||
- Broadcasts flight data to connected WebSocket clients every 1 second
|
- Broadcasts flight data to connected WebSocket clients every 1 second
|
||||||
- Cleans up flights not seen in 60 seconds
|
- Cleans up flights not seen in 60 seconds
|
||||||
- Serves static files and receiver location API
|
- Serves static files, admin panel, setup wizard, and APIs
|
||||||
|
- Authentication via bcrypt password hashing and session cookies
|
||||||
|
|
||||||
- **config.json** - Configuration file for receiver and location settings
|
- **config.json** - Configuration file for receiver and location settings
|
||||||
- See CONFIG.md for full documentation
|
- See CONFIG.md for full documentation
|
||||||
|
|
||||||
- **pixel-view.js** - JavaScript rendering engine (Canvas-based)
|
- **ads-bit.js** - JavaScript rendering engine (Canvas-based)
|
||||||
- Handles WebSocket connection and flight data updates
|
- Handles WebSocket connection and flight data updates
|
||||||
- Renders 10 FPS retro-style canvas animation
|
- Renders 10 FPS retro-style canvas animation
|
||||||
- Layer order (bottom to top): sky gradient → clouds → sun → moon → directional background → grid → aircraft → labels
|
- Layer order (bottom to top): sky gradient → clouds → sun → moon → directional background → grid → aircraft → labels
|
||||||
@@ -43,6 +44,10 @@ Access at http://localhost:{web_port} (configured in config.json)
|
|||||||
|
|
||||||
- **index.html** - Main HTML interface with embedded styles
|
- **index.html** - Main HTML interface with embedded styles
|
||||||
|
|
||||||
|
- **admin/** - Admin panel (login + tabbed settings UI)
|
||||||
|
|
||||||
|
- **setup/** - First-run setup wizard (multi-step configuration)
|
||||||
|
|
||||||
### Sprite Assets
|
### Sprite Assets
|
||||||
|
|
||||||
All PNG sprites face right (eastward) and are flipped in-canvas for westbound aircraft:
|
All PNG sprites face right (eastward) and are flipped in-canvas for westbound aircraft:
|
||||||
@@ -79,6 +84,7 @@ The viewer can rotate between cardinal directions (N/E/S/W), showing aircraft in
|
|||||||
Python packages required:
|
Python packages required:
|
||||||
- aiohttp (web server and WebSocket)
|
- aiohttp (web server and WebSocket)
|
||||||
- netifaces (network interface scanning)
|
- netifaces (network interface scanning)
|
||||||
|
- bcrypt (password hashing)
|
||||||
|
|
||||||
No package.json - frontend is vanilla JavaScript with no build step.
|
No package.json - frontend is vanilla JavaScript with no build step.
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Pixel View Configuration Guide
|
# ADS-Bit Configuration Guide
|
||||||
|
|
||||||
This guide explains how to configure Pixel View for your ADS-B receiver setup.
|
This guide explains how to configure ADS-Bit for your ADS-B receiver setup.
|
||||||
|
|
||||||
## Configuration File
|
## Configuration File
|
||||||
|
|
||||||
@@ -55,7 +55,7 @@ Edit `config.json` to customize your installation:
|
|||||||
|
|
||||||
## Background Themes
|
## Background Themes
|
||||||
|
|
||||||
Pixel View uses directional background images to show the horizon view from your receiver location. Backgrounds are organized into themes stored in the `backgrounds/` folder.
|
ADS-Bit uses directional background images to show the horizon view from your receiver location. Backgrounds are organized into themes stored in the `backgrounds/` folder.
|
||||||
|
|
||||||
### Available Themes
|
### Available Themes
|
||||||
|
|
||||||
@@ -228,29 +228,29 @@ All aircraft sprites should face **right (east)** - the code flips them automati
|
|||||||
|
|
||||||
## Running as a Service (Auto-Start)
|
## Running as a Service (Auto-Start)
|
||||||
|
|
||||||
To run Pixel-ADSB automatically on boot, create a systemd service:
|
To run ADS-Bit automatically on boot, create a systemd service:
|
||||||
|
|
||||||
### 1. Create the service file
|
### 1. Create the service file
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo nano /etc/systemd/system/pixel-adsb.service
|
sudo nano /etc/systemd/system/ads-bit.service
|
||||||
```
|
```
|
||||||
|
|
||||||
Add this content (adjust paths as needed):
|
Add this content (adjust paths as needed):
|
||||||
|
|
||||||
```ini
|
```ini
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=Pixel-ADSB Flight Tracker
|
Description=ADS-Bit Flight Tracker
|
||||||
After=network.target
|
After=network.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
Type=simple
|
||||||
WorkingDirectory=/path/to/pixel-view
|
WorkingDirectory=/path/to/ADS-BIT
|
||||||
ExecStart=/usr/bin/python3 /path/to/pixel-view/server.py
|
ExecStart=/usr/bin/python3 /path/to/ADS-BIT/server.py
|
||||||
Restart=always
|
Restart=always
|
||||||
RestartSec=5
|
RestartSec=5
|
||||||
StandardOutput=append:/var/log/pixel-adsb.log
|
StandardOutput=append:/var/log/ads-bit.log
|
||||||
StandardError=append:/var/log/pixel-adsb.log
|
StandardError=append:/var/log/ads-bit.log
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
@@ -260,18 +260,18 @@ WantedBy=multi-user.target
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo systemctl daemon-reload
|
sudo systemctl daemon-reload
|
||||||
sudo systemctl enable pixel-adsb
|
sudo systemctl enable ads-bit
|
||||||
sudo systemctl start pixel-adsb
|
sudo systemctl start ads-bit
|
||||||
```
|
```
|
||||||
|
|
||||||
### 3. Check status
|
### 3. Check status
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo systemctl status pixel-adsb
|
sudo systemctl status ads-bit
|
||||||
```
|
```
|
||||||
|
|
||||||
### 4. View logs
|
### 4. View logs
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
tail -f /var/log/pixel-adsb.log
|
tail -f /var/log/ads-bit.log
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
# Pixel-ADSB
|
# ADS-Bit
|
||||||
|
|
||||||
A retro SNES-style side-view flight tracker that displays ADS-B aircraft data with custom pixel art sprites.
|
A retro SNES-style side-view flight tracker that displays ADS-B aircraft data with custom pixel art sprites.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
@@ -14,6 +14,8 @@ A retro SNES-style side-view flight tracker that displays ADS-B aircraft data wi
|
|||||||
- Directional view (N/E/S/W) with themed backgrounds
|
- Directional view (N/E/S/W) with themed backgrounds
|
||||||
- Auto-discovery of ADS-B receivers on your network
|
- Auto-discovery of ADS-B receivers on your network
|
||||||
- Canvas-based 10 FPS retro rendering
|
- Canvas-based 10 FPS retro rendering
|
||||||
|
- Admin panel with password authentication
|
||||||
|
- First-run setup wizard
|
||||||
|
|
||||||
## Quick Start
|
## Quick Start
|
||||||
|
|
||||||
@@ -25,14 +27,11 @@ cd ADS-Bit
|
|||||||
# Install dependencies
|
# Install dependencies
|
||||||
pip install -r requirements.txt
|
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
|
# Start the server
|
||||||
python3 server.py
|
python3 server.py
|
||||||
```
|
```
|
||||||
|
|
||||||
Access at http://localhost:2001
|
On first run, visit http://localhost:2001 and the setup wizard will guide you through configuration.
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
@@ -42,7 +41,7 @@ Access at http://localhost:2001
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
Edit `config.json` to customize your installation:
|
ADS-Bit uses a first-run setup wizard to configure your installation. You can also edit `config.json` directly:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// Pixel ADS-B - Retro Side View
|
// ADS-Bit - Retro Side View
|
||||||
class PixelADSB {
|
class ADSBit {
|
||||||
constructor() {
|
constructor() {
|
||||||
this.canvas = document.getElementById('pixel-canvas');
|
this.canvas = document.getElementById('pixel-canvas');
|
||||||
this.ctx = this.canvas.getContext('2d');
|
this.ctx = this.canvas.getContext('2d');
|
||||||
@@ -618,7 +618,7 @@ class PixelADSB {
|
|||||||
|
|
||||||
async fetchReceiverLocation() {
|
async fetchReceiverLocation() {
|
||||||
try {
|
try {
|
||||||
// Fetch from same server that serves pixel-view
|
// Fetch from same server that serves ADS-Bit
|
||||||
const response = await fetch('/api/receiver-location');
|
const response = await fetch('/api/receiver-location');
|
||||||
const data = await response.json();
|
const data = await response.json();
|
||||||
this.receiverLat = data.lat;
|
this.receiverLat = data.lat;
|
||||||
@@ -1970,4 +1970,4 @@ class PixelADSB {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Initialize the app
|
// Initialize the app
|
||||||
const app = new PixelADSB();
|
const app = new ADSBit();
|
||||||
+1
-1
@@ -397,6 +397,6 @@
|
|||||||
<span id="sun-times">☀ --:-- / 🌙 --:--</span>
|
<span id="sun-times">☀ --:-- / 🌙 --:--</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="pixel-view.js?v=47"></script>
|
<script src="ads-bit.js?v=48"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
"""Pixel ADS-B Server - Connects directly to ADS-B receivers"""
|
"""ADS-Bit Server - Connects directly to ADS-B receivers"""
|
||||||
import asyncio
|
import asyncio
|
||||||
import socket
|
import socket
|
||||||
import json
|
import json
|
||||||
@@ -833,7 +833,7 @@ async def main():
|
|||||||
"""Main entry point"""
|
"""Main entry point"""
|
||||||
global receivers, receiver_tasks
|
global receivers, receiver_tasks
|
||||||
|
|
||||||
print("Pixel ADS-B Server Starting...")
|
print("ADS-Bit Server Starting...")
|
||||||
|
|
||||||
load_config()
|
load_config()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user