4 live 1 building on the bench: Pehra Pro, Snap Receipt last shipped

Projects

CoachTrack

Status
Unreleased
Platforms
iPhone, Android and a web portal for parents
Since
March 2026
Stack
Flutter · Hono · PostgreSQL · BullMQ · Twilio
Last shipped

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.

Marking attendance for a group in CoachTrack.

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.