Blue Plate Special Field Report Flight Log

HoselRocket

One codebase, three platforms: an AI golf coach on iPhone, Android and the web.

A subscription golf-improvement app we designed, built and run end to end. The iPhone app, the Android app and the web app share one account and one backend.

  • iPhone
  • Android
  • Web

hoselrocket.app In its planned off-season — back in May.

HoselRocket's course map: nearby golf courses with the weather at a selected club
HoselRocket's goals screen: a player's season goals and AI insights drawn from their coaching chats
An AI-written weekly practice plan in the HoselRocket Android app

What it does

  • GPS round tracking

    Logs every shot by GPS, measures distances for you, and replays the round shot by shot on a satellite map.

  • AI caddie & coach

    Club suggestions during a live round, and coaching built on each player's own stats and history.

  • Scorecard scanning

    Snap a photo of a paper scorecard and the AI reads the scores, the course and the date.

  • Swing video analysis

    Upload a swing video. The AI reviews the frames and explains the fixes in plain language.

  • Offline play

    Download a course, play with no signal, and sync everything afterwards.

  • Friends & challenges

    An activity feed, head-to-head challenges, and tournaments with brackets and leaderboards.

Under the hood

How it's built, for the technically curious.

8 weeks
from first commit to live on the App Store and Google Play
1 codebase
a TypeScript monorepo behind the web app, both mobile apps and the API
9 AI features
built on a large language model, with per-plan monthly limits enforced on the server
7,800+ courses
golf courses on interactive maps, backed by Postgres with row-level security
  • Three billing channels, one membership

    Stripe on the web plus Apple and Google in-app purchases through RevenueCat, kept in sync by webhooks and a reconciliation job. A price drop shipped across all three channels: web subscribers moved to the new price automatically, and App Store and Google Play subscribers kept their original plans.

  • Offline rounds

    Download a course while you have signal, play the round with none, and sync it afterwards. Finishing a round sets off an automatic chain: scorecard, feed post, badges, challenges and a handicap recalculation.

  • Engineered for the off-season

    Two matching switches, one for the web and one for mobile, moved the web app and both mobile apps to a “closed for the winter” screen, backed by a full data archive verified table by table and a documented restart.

  • TypeScript
  • React 19
  • Vite
  • React Native / Expo
  • Node.js / Express
  • PostgreSQL (Supabase)
  • Generative AI
  • Stripe
  • RevenueCat
  • Cloudflare
  • Leaflet / Google Maps

Place Your Order Send Word Send Airmail

Want an app like this?

Hit Contact us and a quick terminal walks you through a few questions (what you're building, which platforms, and a ballpark estimate), then sends it straight to us.

Prefer email? hello@flyingmarmot.ca