RYTHM
Draft

A sports-focused short video platform with live classes, community challenges, and five user tiers — built in React Native

A hybrid mobile app that goes beyond short-form video — giving athletes, coaches, sports clubs, and shops their own distinct experience on one platform, with built-in online class booking, escrow payments, community challenges, and a monetisation layer that works differently for every user type.

0
Distinct user tiers with separate feature sets
0
Payment gateways integrated (Stripe)
0
Months from brief to deployment
Challenge

One app. Five completely different user types. One codebase.

Short-form sports video is a crowded space — but this product wasn't trying to be TikTok with a sports filter. The brief was to build a platform where a grassroots athlete, a professional coach, a sports retailer, and a sports club could all operate simultaneously with fundamentally different capabilities, different monetisation models, and different relationships with each other — without any of them feeling like a secondary consideration.
C-01

Five user tiers with genuinely different experiences

Guest, Basic, Live class, Teacher, Shop, Sports Club, and other users each needed distinct feature sets, different video length limits, different monetisation capabilities, and different access rules — all managed within a single codebase without the architecture becoming unmanageable.

C-02

Live class escrow with threshold logic

Live classes only run if a minimum revenue threshold is met before the start time. If not, every paying viewer gets a full automatic refund. If successful, funds sit in escrow for five days before the platform pays out after deducting its fee. Building this reliably required careful payment state management.

C-03

Community challenges with verified age gating

Any user can create or join global or group challenges — but participation requires government document verification and age confirmation before entry. The winner determination, prize pool distribution, and platform fee deduction all had to be automated and auditable.

C-04

Video infrastructure for a content-heavy platform

Unlimited video uploads, real-time recording with filters, variable length limits by user tier, and smooth feed performance across both iOS and Android — all without the app becoming slow or the backend becoming expensive to run at scale.

How it works

From guest view to paid live class — every user type has their own path

STAGE — 01 / DETECT
User installs
Guest access to unlimited feed immediately, no sign-up required
Registers
Sport category selection, profile setup, social login or manual — then tier selection
Consumes content
Personalised feed, likes, comments, private messages, favourites, challenges
Creates content
Uploads or records video with filters, length limit based on tier
Monetises
Masterclass booking, teaching services, shop product promotion, club membership
Gets paid
Escrow release, platform fee deduction, direct bank transfer to creator
Technical tension

Escrow logic, tier-based permissions, and video delivery — all in one hybrid app

The live class payment system was the most complex single feature on the project. A live class creator sets a minimum revenue threshold and a per-viewer fee. The platform collects payments, monitors the threshold in real time against the scheduled start time, and either triggers the class or automatically refunds every participant — with no manual intervention required. If the class runs successfully, funds sit in escrow for five days before the admin releases payment after deducting the platform fee. Building this state machine reliably, with correct handling for cancellations, no-shows, and partial refunds, required careful design of the payment flow before a line of application code was written.

React Native gave us a single codebase for iOS and Android, but the tier-based permission system — where the same screen behaves differently depending on whether you are a Basic, Live class, Teacher, Shop, or Sports Club user — required a clean, maintainable access control layer that could be extended without breaking existing tiers. Video performance was the other constant pressure point: unlimited uploads, real-time recording, feed scrolling, and variable length limits all had to work smoothly on mid-range devices, which is where the majority of sports app users actually are.

masterclass-escrow — threshold check
01 // check threshold at scheduled start time
02 const collected = await getCollectedAmount(classId)
03 const { minThreshold, startTime } = await getClassDetails(classId)
04 if (Date.now() >= startTime) {
05 if (collected < minThreshold) {
06 // threshold not met — refund all participant
07 await refundAllParticipants(classId)
08 await updateClassStatus(classId, 'CANCELLED')
09 → push notification sent to all participants
10 → 100% refund processed via Stripe / Bizum
11 } else {
12 await updateClassStatus(classId, 'LIVE')
13 → escrow period started · payout scheduled in 5 days
14 }
15}
Kicker

From content upload to payment — the same closed loop for every creator tier

Whether you're running a live class, offering private lessons, or promoting a sports shop — every monetisation path on the platform follows the same closed loop from content to payment.
Capabilities

Four things the platform does — built for a sports community that creates, teaches, and competes

VIDEO PLATFORM

Sports-focused short video feed

Unlimited video consumption for all users from install. Upload from gallery or record in-app with filters. Variable length limits by tier. Like, comment, share to third-party platforms, private message, follow — the full social layer built in from day one.

MASTERCLASSES

Live masterclasses with escrow payments

Live class users set a minimum threshold and per-viewer fee. The platform collects, monitors, and either runs the class or refunds participants automatically. Successful classes pay out via escrow after five days. The most complex feature on the platform — and the one that most directly drives creator revenue.

CHALLENGES

Global and group challenges with prize pools

Any user can create or join a challenge — worldwide or within a group. Entry requires age verification via government document upload. Winners are determined by likes from verified participants. Prize pool distributed automatically across three winners after platform fee deduction.

MULTI-TIER MONETISATION

Five user types, five revenue models

Basic users consume and create. Masterclass users teach at scale. Teachers offer private lessons. Shops promote products. Sports clubs manage memberships with promo card access. Each tier has its own capabilities, its own monetisation model, and its own relationship with the platform.

Results

A full-featured sports platform — five user tiers, live payments, and community challenges — shipped in twelve months.

The full platform — video feed, five user tiers, masterclass booking with escrow, community challenges with age verification and prize distribution, shop and sports club profiles, and Stripe payment integration — was delivered and deployed across iOS and Android in twelve months. The tier-based permission system was built to be extensible from day one, allowing new user types and feature sets to be added without restructuring the core architecture. The escrow and refund logic handled all live class payment states correctly from the first live session. The platform launched with a complete, production-ready feature set covering every user type defined in the original brief.
5+
User tiers with distinct feature sets and monetisation models
0
Payment gateways live — Stripe
0
Codebase for both iOS and Android via React Native
0
Months from brief to full deployment

Building a platform where different user types need to coexist — and each one needs to work perfectly?

We've built multi-tier mobile platforms with live payments, escrow logic, and community features from scratch. If your product has real complexity underneath the surface, that's exactly the kind of work we do best. Let's talk.

Let's Talk →