“The app for the football coach” is how it introduces itself, and that is exactly what it is. Hundreds of drills and complete training sessions, with diagrams and video, on the phone of the coach standing at the side of the pitch.
What the app does
The core is the drill library: a searchable collection of exercises and training sessions. Search works on text and on filters — by tag, by whether a drill has video, by what the coach has bookmarked, and by their own material that they added themselves.
Around that sits the structure of a real club. Teams have a colour, training days and a season start and end. There is a calendar for matches and other events. Coaches sign in to an account tied to their club, and access runs through a subscription.
The app is bilingual, Dutch and English.
The engineering
Built with React Native, so iOS and Android share one codebase instead of two separate apps with twice the work and twice the same bugs. State runs on MobX-State-Tree: teams, trainings, exercises, tags and events are all typed models, which means a mistake in the shape of the data shows up at build time rather than in a coach’s hands on a Saturday morning.
Lists page in as you scroll, because a library of hundreds of drills with video has no business arriving over a mobile connection all at once.
Why this shape works for a membership organisation
A sports federation, an association or a training provider almost always has the same shape: a library of material, a group of users with different rights to it, and a subscription that governs those rights. That pattern is worth building properly once and extending afterwards.
Recognise that shape in your own organisation? Put it to me.