Commit Graph

6 Commits

Author SHA1 Message Date
Vantz Stockwell
d91ceb5b24 feat: Build Early Access page with backend email capture
Combined page: countdown timer (Feb 28), email capture with server
count segmentation (wired to POST /api/early-access), Founding Admin
Program (25 slots), demo dashboard preview placeholders, roadmap
voting, and launch timeline. Backend: Axum handler, migration for
early_access_signups table with email + server_count + created_at.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 23:51:55 -05:00
Vantz Stockwell
a53cb4d8a5 feat: Implement server endpoints, store, and live dashboard
Backend: Server connection/config/admins DB queries, server API routes
with auth-gated endpoints (overview, config CRUD, admin management).
Frontend: Server store wired to API, dashboard fetches server data on
mount with live status indicators, uptime formatting, and server
config display. Logout now redirects to /login.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 21:51:49 -05:00
Vantz Stockwell
5668675b6a feat: Implement full auth pipeline — login, register, JWT, bootstrap
Backend auth flow is now functional:
- services/auth.rs: Argon2id password hashing, JWT access/refresh tokens
- services/encryption.rs: AES-256-GCM encrypt/decrypt, hex token generation
- api/auth.rs: Login, register, refresh, logout, /me endpoints
- middleware/auth.rs: JWT Bearer token extractor (FromRequestParts)
- db/users.rs + licenses.rs: Full CRUD with runtime queries (no compile-time DB)
- main.rs: Bootstrap admin user on first run via ADMIN_EMAIL/ADMIN_PASSWORD env vars
- NATS connection now optional for dev (graceful fallback)
- Added hex and http crates to Cargo.toml

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 21:49:37 -05:00
Vantz Stockwell
e5ed25a86a scaffold: Backend API routes, DB queries, and middleware stubs
88 handler stubs across 13 route files, 66 DB query stubs across
11 modules, auth/license extractors, and rate limit middleware.
All bodies are todo!() — ready for Phase 1b implementation.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 21:42:05 -05:00
Vantz Stockwell
5c11050eca scaffold: Backend core — Cargo.toml, main.rs, config, models, panel adapter
Axum server entry point, AppConfig, AppState, ApiError, all model
structs (auth, license, server, wipe), and the PanelAdapter trait
that abstracts AMP/Pterodactyl/companion connections.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 21:41:58 -05:00
Vantz Stockwell
cc8c1e3519 feat: Add 15 backend service stub files with TODO implementations
Stub files for all services declared in services/mod.rs:
- Panel adapters: AMP, Pterodactyl, Companion (NATS-based)
- Wipe pipeline: WipeEngine, Scheduler, HealthChecker, BackupManager
- Infrastructure: NatsBridge (JetStream), SteamUpdateWatcher, MapManager
- Notifications: Discord webhooks, Pushbullet push notifications
- Platform: LicenseService, CloudflareService, encryption utilities

Each file has struct definitions, method signatures with proper types,
and descriptive TODO comments outlining the implementation plan.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 21:35:16 -05:00