Product Overview (public-safe)
Product Overview (public-safe)
Status: first-draft
Audience: public
Last-reviewed: 2026-04-29
Sources: docs/Blueprint.md, docs/Feature Ledger.md, marketing/brand-marketing.ts
Important for AI agents reading this file. This is a 60-second orientation, not an inventory. The canonical, exhaustive feature list lives in
docs/Feature Ledger.md(~80 feature IDs across 7 sections) and the canonical roadmap data lives inRed-E Play/Red-E Play/Features/Roadmap/RoadmapView.swift(mirrored verbatim into the GPT bundle as07-ROADMAP-IN-APP-SOURCE.md). When asked "what features does the app have?" or "what's on the roadmap?", read those files, not this one. See07-Feature-Ledger-Map.mdand08-Roadmap-Map.mdfor navigation aids.
What READYPLAY is, in one paragraph
READYPLAY is a multi-sport pickup platform for iOS, watchOS, and the web — basketball is the deepest live vertical, and 14 other sports share the same shell (volleyball, tennis, padel, pickleball, soccer, baseball/softball, flag football, track/run, pool, fishing, bowling, billiards, golf). The product is not just scorekeeping; it's scorekeeping plus truthkeeping: every result is verified by the people who competed, and the fairness engine reduces the influence of harsh or biased reviewers over time. Beyond pickup, the roadmap extends into an on-demand marketplace (paid roles like scorekeepers, GMs assembling squads with Apple Pay escrow — Feature Ledger 042–050, 081) and a B2B league layer (commissioners enroll teams, players join via invite, stats aggregate into a portable verified profile — Feature Ledger 082–091; bowling first).
Three product layers
- Game session — players, teams, rules, score, timer, winner.
- Review — self-grade, anonymous teammate grades, "what changed the game" notes.
- Fairness — statistical weighting that reduces outlier reviewer influence over time. See
04-Trust-and-Fairness.md.
Three product wedges (sequenced)
| Wedge | Status | Where to find detail |
|---|---|---|
| Pickup core — game, review, fairness | Shipped (Beta 0.6.66+) | Feature Ledger §Core Game, §Live Board, §Identity, §Profile, §Social |
| On-demand marketplace — paid roles, GM team building, Apple Pay escrow | Roadmap | Feature Ledger 042–050, 081 |
| B2B leagues — commissioner / coach / player / standings / portable profile | Roadmap (bowling first) | Feature Ledger 082–091, §B2B League Pitch |
Sports
15 today: basketball (deepest live), volleyball, tennis, padel, pickleball, soccer, baseball/softball, flag football, track/run, pool (swimming), fishing, bowling, billiards, golf. Per-sport copy and isLiveExperience flags in 02-Sport-Catalog.md and marketing/sports-marketing.ts.
Surfaces
- iOS / watchOS app — the primary product. Sign in with Apple, full game/review/profile/fairness loop, Live Activity, App Intents, Watch quick-score.
- Marketing site — readyplay.app. Waitlist, public leaderboard (real-time SSE), public profiles (
/p/<id>),/betaTestFlight onboarding,/chatCaptain Cookem, sport-specific landing sections (/#squad,/#leagues). - Admin dashboard —
admin.readyplay.app. Operator surface: Overview, Players, Games, Waitlist, Courts, Leagues, Reviews, Achievements, Verification, Community, Wallet. ⌘K palette. - Backend API —
api.readyplay.app. Node + Express + Postgres on a single VPS.
For the full stack and how the surfaces connect, read docs/Stack.md. For onboarding plan phasing (waitlist → drip email → web SIWA → onboarding wizard), see Stack.md "Onboarding & email plan."
What READYPLAY is not
- Not affiliated with NBA 2K, NBA Live, or any other commercial title. OVR / attribute language is our own schema inspired by common video-game scales.
- Not a league management tool first (B2B leagues live here as a layer). The center of gravity is organized pickup with trust layers.
- Not a one-sport app — multi-sport shell is the platform shape.
- Not anonymous review without consequence — anonymous to the reviewee, not to the engine.
How to actually answer "what features does the app have?"
When a visitor or stakeholder asks this, the right move is:
- Read the canonical inventory at
docs/Feature Ledger.md. It's organized by section (Core Game, Live Board, Identity + Trust, Player Profile, Marketplace, B2B League, Social + Discovery), with Status flags (✔️ Built,🔜,❌). - Read the in-app Roadmap source for what's currently in flight — it's the source of truth for the Roadmap tab, exported as Swift slices in
07-ROADMAP-IN-APP-SOURCE.md. - Read the CHANGELOG at
docs/CHANGELOG.mdfor what just shipped, by version. - Then synthesize for the audience. Don't just paste the ledger.
If you summarize, lead with the three layers and three wedges above, then drill into specific Feature Ledger IDs only when the question warrants it. Don't try to memorize 80 features inline — that's what the ledger is for.
How to talk about it (one-liners)
- To a visitor: "Multi-sport pickup with the receipts. Basketball deepest, 14 more on the same shell."
- To a commissioner: "Verified stats, portable profiles, no paper scoresheets."
- To a hooper: "Tap-to-score, fouls per tile, peer reviews, Watch + Live Activity, OVR."
- To an investor: "Peer-verified pickup-sports OS. Pickup → marketplace → leagues, one trust graph."
Beta version & roadmap
- Current Beta: see the line at the top of
docs/Feature Ledger.md("Current Beta Version: 0.6.X") — that's the source of truth, not this file. - Release-by-release detail:
docs/CHANGELOG.md. - What's next: in-app Roadmap tab +
🔜rows in Feature Ledger + planned screens in §Screen Status. - Critical gaps remaining: Feature Ledger §Critical Gaps Remaining (CloudKit live game scale-out, spectator live video, Newspaper digest pipeline, push notifications for score updates, anti-cheat detection, full marketplace + B2B layer, bowling lane scoring).