Who showed up, and are they getting better?
Every coach answers those two questions somehow: on paper, from memory, or not at all.
CoachTrack is a mobile app for teachers and coaches: groups and members, attendance, progress recorded against templates, session notes, and reports parents can open without installing anything.
What it does
- Groups, members and sessions.
- Attendance, marked in seconds.
- Progress templates, and progress recorded against them over time.
- Session notes.
- Reports for parents, sent in bulk, opened in a browser.
- Notifications by push, email and SMS.
How it's built
- Mobile: Flutter, Riverpod and GoRouter, on the same architecture as my other Flutter apps.
- Backend: Hono and Drizzle, with BullMQ for reports and messages off the request path.
- Messaging: Firebase Cloud Messaging for push, Resend for email, Twilio for SMS.
- Parent portal: server-rendered web pages. A parent gets a link, not an app to install.
Decisions
Why a web page for parents, and not an app? #
Because parents need one report a week, not another app. A server-rendered page opens from a text message on any phone.
The numbers
- 209 commits in six weeks, from 15 March to 24 April 2026.
- About 27,600 lines of Dart and 13,900 lines of TypeScript.