Skip to content

Phoenix Portal v0.1.0 Beta

Latest

Choose a tag to compare

@9thLevelSoftware 9thLevelSoftware released this 21 Apr 14:57

Phoenix Portal v0.1.0 Beta

Initial public beta release of Phoenix Portal — the web companion dashboard for Project Phoenix, a community rescue project keeping Vitruvian Trainer machines alive after company bankruptcy.

🔥 Core Features

Dashboard & History

  • Real-time Dashboard — At-a-glance workout stats, streak tracking, recovery score, goal progress rings
  • Workout History — Complete searchable/filterable workout log synced from mobile app
  • Session Detail View — Deep dive into individual workouts with exercise breakdown

Analytics & Insights

  • Performance Analytics — Volume trends, PR tracking, muscle group distribution
  • Biomechanics Analysis — Velocity zones, ROM trends, asymmetry detection
  • Training Load Gauge — Acute:chronic workload ratio monitoring
  • Muscle Heatmap — Visual muscle group coverage with react-muscle-highlighter
  • Community Distribution Charts — See how your stats compare

Advanced Data Visualization

  • Force Curve Charts — Concentric/eccentric power output visualization (@visx)
  • Asymmetry Gauges — Cable A/B balance monitoring (2% threshold)
  • Power Output Graphs — Set-by-set performance visualization
  • Consistency Widgets — Training pattern tracking

Session Replay (FLAME tier)

  • 50Hz Telemetry Playback — Rep-by-rep motion replay canvas
  • Timeline Navigation — Scrub through workout timeline
  • Set Navigation — Jump between sets
  • Fatigue Summary — Per-set fatigue analysis
  • Quality Badges — Rep quality indicators

Routine Builder (FLAME tier)

  • Visual Routine Editor — Drag-and-drop exercise ordering
  • Superset Support — Group exercises with rest period configuration
  • AMRAP & PR-scaling — Advanced workout modifiers
  • Routine Sharing — Publish to community library
  • Routine Detail View — Preview routines before using

Training Cycles (FLAME tier)

  • Multi-week Periodization — Build structured training blocks
  • Day-by-Day Planning — Assign routines to specific days
  • Cycle Activation — One active cycle at a time (enforced)

Community Hub (FLAME tier)

  • Routine Library — Browse and clone community routines
  • Vote System — Upvote/downvote community content
  • Creator Stats — Track routine popularity
  • Blocked Users — Content moderation controls

Leaderboards & Challenges

  • Global Leaderboards — Compete on volume, PRs, streaks
  • Challenge System — Time-limited competitions
  • Rankings — Real-time position tracking

Goals & Recovery

  • Goal Tracking — Set and monitor fitness objectives
  • Recovery Scoring — Sleep/readiness integration
  • Progress Rings — Visual goal completion

Integrations (FLAME tier)

  • Strava Connect — Sync activities bidirectionally
  • Fitbit OAuth — Connect wearable data
  • Garmin Webhook — Automatic activity import
  • Hevy Import — Migrate workout history
  • Liftosaur Import — Migrate programs and logs

💎 Subscription Tiers

Tier Monthly Annual Features
FREE $0 $0 Landing page, pricing info
EMBER $5 $49/yr Cloud sync, history, dashboard, goals, recovery
FLAME $15 $149/yr Analytics, community, routines, cycles, integrations
INFERNO $25 $249/yr Session replay, advanced biomechanics (coming soon)

🛠 Technical Stack

  • Frontend: React 19, Vite 7, TypeScript, Tailwind CSS v4
  • UI Components: shadcn/ui (50+ Radix UI primitives)
  • State: Zustand 5 (client), TanStack Query 5 (server)
  • Visualization: Recharts 3, @visx, ECharts 6, react-muscle-highlighter
  • Animation: Framer Motion (reduced-motion support)
  • Backend: Supabase (PostgreSQL, Auth, Realtime, Storage)
  • Edge Functions: 20 Deno functions for billing, OAuth, sync
  • Payments: Paddle (Merchant of Record)
  • Error Tracking: Sentry (cookie-consent-gated)
  • Testing: Vitest 4, Playwright 1.58, Testing Library
  • Linting: Biome 2.4

📱 Mobile Sync

Full bidirectional sync with Project Phoenix mobile app (KMP):

  • Push: Workouts → Supabase (realtime broadcast to portal)
  • Pull: Routines, cycles → Mobile SQLite
  • Conflict Resolution: Domain-aware strategy (mobile authoritative for BLE data)
  • Pagination: Cursor-based, 100 entities/page

🎨 Phoenix Theme

Dark theme with ember color palette:

  • Background: #0D0D0D
  • Ember: #FF6B35
  • Flame Red: #DC2626
  • Gold: #F59E0B
  • Forge Green: #10B981
  • Custom animations: flame-flicker, ember-rise, phoenix-glow

📋 Known Limitations (Beta)

  • INFERNO tier not yet purchasable (session replay access via FLAME)
  • External activity sync queue processing is manual
  • Apple Sign-In token rotation requires manual script

🙏 Community

This project exists because of the Vitruvian Trainer community's refusal to let great hardware die. Special thanks to the beta testers and early supporters.


Full Changelog: First release