Roadmap

High-level milestones and their work items. Each work item links to its full spec in items/.

MVP

Target customer segment: church security teams. See Product Overview and Customer Segments.

Foundation

These block everything else. No feature work starts until the skeleton is in place.

  • Monorepo Scaffold — Cargo workspace, directory structure, CI skeleton
  • Core Crate — models, validation, scoring profiles, sync protocol, offline queue
  • Proto Definitions — ConnectRPC service and message .proto files, buf config
  • DB Schema — Postgres migrations for all entities
  • UniFFI Setup — Swift + Kotlin binding generation pipeline

Server

  • Auth Module — registration, login, JWT, password reset, invite flow
  • Billing Module — Authorize.net integration, subscription management, event enrollment payments
  • Score API — ConnectRPC service for score submission, querying, live streaming
  • Event API — ConnectRPC service for event CRUD, roster management
  • Drill API — ConnectRPC service for drill CRUD, visibility, copying, favorites
  • User API — ConnectRPC service for user profiles, friends, social graph, user search
  • Challenge API — ConnectRPC service for challenge CRUD, invitations, results
  • Leaderboard API — ConnectRPC service for per-drill, per-org, friends leaderboards
  • Achievement API — ConnectRPC service for badge definitions, user achievement tracking
  • Media API — ConnectRPC service for file upload/download, presigned URLs (DO Spaces)
  • Push Service — push notification delivery (APNs + platform push), event/challenge/social notifications
  • Range Bag API — ConnectRPC service for gear/equipment tracking
  • Content Feed API — ConnectRPC service for dynamic content/announcements, read tracking

Dashboard (Web)

  • Dashboard Auth — login, registration, password reset UI
  • Drill Builder — create and edit drills with scoring profiles, diagrams, required items
  • 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)

Mobile (iOS + Android)

PWA

Marketing

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

Infrastructure

Migration

  • Migration ETL — one-time Supabase to new Postgres data migration
  • One-Way Sync — Supabase to new DB listener during coexistence period

Post-MVP

  • 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
  • White-label native app configuration (server URL, MDM)
  • Org discovery and public drill catalog

Future

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