-
released this
2026-06-10 09:32:54 -07:00 | 11 commits to main since this releaseDeployment-hardening release: a fresh install (especially Docker) now works with no manual steps and behaves well on real-world hosts.
Improvements
- Docker first-run just works —
docker compose upon a fresh clone auto-seedsconfig.json(via a new entrypoint) onto a./datavolume, then drops you into the setup wizard. No manualcp, no single-file bind-mount footgun. - Auto-scan skips oversized subnets (larger than /20, e.g. a docker bridge
172.17.0.0/16) so receiver discovery no longer stalls startup or floods the network on Docker-enabled hosts. /healthendpoint (status, version, receiver/flight counts) plus a DockerHEALTHCHECK.- Clean shutdown on
docker stop/systemctl stop(SIGTERM) — no stack-trace noise. - Configurable config path via
ADSBIT_CONFIGfor flexible deployments. - Version surfaced at startup, in
/api/config,/health, and the admin header.
Verification
Image builds; a fresh
docker runwith an empty volume seeds config, starts, skips the in-container/16, serves/health, and reports Docker healthhealthy. Bare-metal env override, subnet skip,/health, and graceful shutdown all confirmed.Full changelog: v1.1.0...v1.1.1 (PR #9)
🤖 Generated with Claude Code
Downloads
- Docker first-run just works —
-
released this
2026-06-09 23:41:25 -07:00 | 13 commits to main since this releaseHighlights
✨ In-app sprite pixel editor (admin → Sprites → EDIT)
Draw and edit sprites at native 500×333 directly in the browser — no external tools. Pencil, eraser, color picker, fill bucket; line / rectangle / ellipse shape tools (outline & filled); rectangular select with move, clipboard (cut/copy/paste) and arrow-nudge; adjustable reference-image overlay for tracing; brush size & opacity; retro, custom (saved), and recent color palettes; zoom/pan, grid, undo/redo. Exports straight to the existing sprite endpoint.
📡 Receiver health & management
The Receivers tab now shows live per-receiver status — 🟢 receiving / 🟡 connected, no data / 🔴 unreachable — with message counts and last-seen times. New select → SAVE & APPLY → auto-test flow, selectable scan results, TEST CONNECTIONS, and a per-interface scan selector that avoids slow whole-network scans (oversized subnets like a docker /16 are skipped).
🐛 Critical fix — server crash on receiver restart
Restarting receiver connections (or SAVE & APPLY) previously cancelled tasks awaited in the main event loop, whose
CancelledErrorkilled the entire server process. Receiver tasks now run independently and are cancelled cleanly — the server stays up across restarts.🔧 Also
- Version surfaced at startup, via
GET /api/config, and in the admin header. config.json(password hash + session secret) is now git-ignored.- Admin asset cache-busting so updates load without a manual hard-refresh.
- README / CLAUDE.md updated.
Full changelog: v1.0...v1.1.0 (PRs #6, #7, #8)
🤖 Generated with Claude Code
Downloads
- Version surfaced at startup, via
-
v1.0 Stable
released this
2026-06-08 14:09:16 -07:00 | 20 commits to main since this releaseADS-Bit v1.0
Initial release of ADS-Bit — a retro SNES-style side-view flight tracker.
Features
- Real-time ADS-B aircraft tracking with pixel art sprites
- 9 aircraft types: small prop, regional jet, narrow body, wide body, heavy, helicopter, balloon, glider, UAV
- ADS-B emitter category detection via dump1090 JSON API with heuristic fallback
- Animated sun and moon with accurate astronomical positions
- Dynamic sky colors and weather visualization
- Directional view (N/E/S/W) with themed backgrounds
- Auto-discovery of ADS-B receivers on your LAN
- Admin panel with password authentication
- Theme management: rename, upload backgrounds, create custom themes
- Sprite management: upload custom aircraft sprites
- First-run setup wizard
- Docker Compose and Podman support
Deployment Options
- Direct:
pip install -r requirements.txt && python3 server.py - Docker:
docker compose up -d - Podman:
podman-compose up -d - systemd: See CONFIG.md for service setup
Downloads