Roadmap — Pro & New Features

Everything beyond replacing the legacy app at parity. Once existing users can migrate to the new native apps (Roadmap — Legacy App Replacement), this is where we expand:

  • New shooter surfaces the Flutter app never had — the web PWA and the marketing site
  • The paid Pro SaaS layer for organizers — organized events, the admin dashboard, org management, white-label, and shared SSO
  • Post-MVP and Future milestones

Builds on the shared platform foundation in Roadmap — Legacy App Replacement (server, core auth, infrastructure). Each work item links to its full spec in items/.

MVP

Auth & Identity

  • SSO Origin — shared auth origin, HttpOnly session cookie, silent restore across dashboard and PWA, deployment-configurable for white-label

New Shooter Surfaces

The same shooter features as the native apps, delivered on the web.

PWA

Marketing

  • Marketing Site — static HTML + Tailwind CSS landing page, links to dashboard and app downloads

Events

  • Event API — ConnectRPC service for event CRUD, roster management (the core capability RDP adds; surfaced read-side in the shooter clients via Event View / PWA events)

Dashboard (Web)

  • Dashboard Auth — login, registration, password reset UI
  • Drill Builder — create and edit drills with scoring profiles, diagrams, required items
  • Dashboard Shared Contracts — navigation shell, UX patterns, component contracts for all dashboard features
  • Event Builder — create events, assign courses/drills, set dates
  • Roster Builder — manage participants, assign drills, placeholder users
  • Score Dashboard — sortable tables, graphs, CSV export
  • Org Settings — org management, member roles, branding (white-label)

Infrastructure

  • Playground POC Hosting — CF Access–gated demo catalog at playground.range-day.app (Cloudflare Pages), for previewing ideas/styling

Post-MVP

  • Billing Module — Authorize.net integration, subscription management, event enrollment payments
  • Event Enrollment — browse events, pay and enroll (Authorize.net)
  • Admin analytics dashboard (usage stats, engagement metrics)
  • Shot timer integration (camera OCR + BLE)
  • 3D drill builder (Bevy/WGPU)
  • Stripe migration (when revenue thresholds are met)
  • Zitadel auth migration (when MFA/federation needed)
  • PWA background sync + camera access
  • Server-side rate limiting (supplement CloudFlare for white-label deployments without CF)
  • White-label native app configuration (server URL, MDM)
  • Org discovery and public drill catalog
  • Cross-run course leaderboards (GetCourseLeaderboard, per-course / per-event / per-org) — beyond legacy parity (legacy only ranked within a single run, which ships already); parked by the msd-course-leaderboards 2026-07-13 decision with the per-run aggregate + ListCourseRuns foundation ready
  • Upgrade Quartz to latest version (pinned to v4.4.0 due to v5.0.0 breaking changes)

Future

  • Competition scoring and public scoreboards
  • LE qualification tracking and compliance reporting
  • Military deployment integration (LDAP, enlistment records)
  • Instructor marketplace (find nearby instructors)