Add admin panel, authentication, and first-run setup wizard for v1.0

Implements credentialed admin panel and multi-step setup wizard so new
users can configure location, receivers, and preferences without editing
JSON files. Adds bcrypt password auth with session cookies, setup lockout
after first run, and expanded config schema with backward compatibility.

New files: admin/{html,css,js}, setup/{html,css,js}
Modified: server.py (auth, setup, admin APIs), index.html (dynamic title),
pixel-view.js (site/display config), requirements.txt (bcrypt),
config.json.example (full schema)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
root
2026-06-08 08:35:07 -07:00
commit 42a50037ab
33 changed files with 5584 additions and 0 deletions
+35
View File
@@ -0,0 +1,35 @@
# Custom Backgrounds
Place your custom background images in this folder.
## Required Files
You need to provide 4 directional background images:
- `north.png` - View looking north
- `east.png` - View looking east
- `south.png` - View looking south
- `west.png` - View looking west
## Image Specifications
- **Dimensions:** 1536 x 1024 pixels
- **Format:** PNG with transparency support
- **Orientation:** Each image should show the horizon/landscape as seen when facing that cardinal direction from your location
## Tips
- Include a horizon line in each image - the sun and moon will set behind it
- Keep the upper portion (sky area) relatively simple for aircraft visibility
- The bottom portion can have more detail (terrain, buildings, etc.)
- Consider your local landmarks and terrain for each direction
## Enabling Custom Theme
Set the theme in `config.json`:
```json
{
"theme": "custom"
}
```
Then restart the server.
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB