Weekly Update
Date: 2026-06-01 To: Isaac Botkin
Summary
This week we stood up hosted test environments, so the apps can now be opened and tried hands-on rather than only run in development. A web-based version of the shooter app is now underway alongside the iPhone and Android apps. The mobile apps also picked up several new features — notifications, photo and video sharing, range day scheduling, achievements, and dry fire score tracking — though these are early versions that still need testing before they’re ready for real users. The next stretch focuses on testing and refining what’s built, expanding the web app, bringing data over from the existing app, and improving the look and feel once design guidelines are in hand.
Environments
Staging
- Marketing: https://staging.range-day.app/
- Dashboard: https://staging-dashboard.range-day.app
- PWA: https://staging-my.range-day.app
Production
- Marketing: https://range-day.app/
- Dashboard: https://dashboard.range-day.app (WIP)
- PWA: https://my.range-day.app (WIP)
Beta Program & Discovery
- Lyrinda sent the initial list of beta testers who were issued NDAs
- First signed NDA is back — reaching out this week to start discovery conversations with them, and following the rest of the list as signatures come in
Last Week
- Wired up deployment to managed Kubernetes (DigitalOcean) — server, dashboard, and marketing site now build and deploy to staging, with initial monitoring in place
- Put up the marketing landing page with a Shooter Login link
- Mobile (iOS + Android): first implementations of push notifications, media capture / upload / gallery / sharing, personal range day scheduling, achievements display, and content feed — functional but not yet tested end-to-end
- Added dry fire score submission across server, core, and both mobile platforms
- Wired server-side achievement evaluation into score submission
- Started the shooter-facing PWA: app shell with auth and tab navigation, plus drill browsing, score entry, offline queue, history, and void — an early third client alongside iOS and Android
- Finalized specs for the data migration from the existing app (ETL + one-way sync)
This Week
- Continue the PWA toward feature parity with the mobile apps: events + range bag, media + dry fire, and social/training features (specs drafted)
- Pick up the dashboard event builder and roster builder — these slipped last week as effort went to PWA parity work and to the Digital Ocean deployment, which took longer than expected but led us to a better setup than originally planned
- Begin data migration work — ETL and one-way sync from the existing app are specced and ready
- Split the roadmap into two tracks — MVP Current App (replacing the existing app) and MVP Pro (new features) — per last week’s sync
- Kick off UX polish and wireframes with Ryan as design guidelines come in
- Start discovery conversations with the first signed beta tester and follow up on outstanding NDAs
- Kick off a static build release to bring the production dashboard and PWA in line with staging
Changelog
New since the 2026-05-26 update.
Infrastructure & Deployment
- Migrated deployment to managed Kubernetes (DOKS) — server, dashboard, and marketing site
- Static hosting stack (nginx) for marketing + dashboard
- Initial observability — request tracing and server monitoring wired up
- CI/CD: per-target deploy workflows, manual redeploy support, release versions derived from git tags
- First server release tagged (server-v0.1.1)
PWA (Dioxus — Rust compiled to WebAssembly)
- Foundation shell — Dioxus app, auth, 4-tab navigation, service worker
- Scoring — drill browsing, score entry, offline queue, score history, and void
Mobile (iOS: SwiftUI, Android: Jetpack Compose)
- Push notifications (APNs + FCM)
- Media capture, multi-upload, gallery, and share overlay
- Personal range day scheduling and sharing
- Achievements display and content feed
- Dry fire score submission
Server & Core
- Server-side achievement evaluation on score submission
- Achievement criteria migrated from drill_name to drill_id
- Dry fire score submission support across server and shared core
Marketing
- Landing page implemented (Tailwind v4) with environment-aware URLs and a Shooter Login link
Docs & Planning
- Migration ETL and one-way sync specs finalized and marked ready
- Auth broker / SSO origin spec drafted (with Zitadel consideration note)
- PWA specs added across foundation, scoring, events/range bag, media/dry fire, and social/training