Participant
Browse and filter events, register, keep a personal list of registrations, join the event chat, and see standing on the leaderboard.
Events platform
A sports society runs on sign-up sheets, group chats, and a coach's notebook. This replaces all three — event listings with real registration, per-event chat, leaderboards, and performance tracking that follows a participant across the season.
The problem
Context
A society runs trials, fixtures, and training sessions across several sports at once, with a membership that changes every intake and coaches who only see their own group.
What kept breaking
"Interested" in a group chat is not a registration, so numbers were guesswork until the day. Announcements reached whoever happened to be in the right chat. And performance across a season lived in a coach's own notes, so selection decisions were hard to explain.
The real requirement
A registration that means something, a conversation scoped to the people in the event, and a performance record that survives past the end of the fixture.
The approach
Browse and filter events, register, keep a personal list of registrations, join the event chat, and see standing on the leaderboard.
See who registered, run the event, and record performance against individual participants so selection has evidence behind it.
Create and manage events across sports, oversee participation, and review performance across the whole society.
Firebase Authentication for role-gated access and Firestore for events, registrations, chat messages, and performance records.
Engineering highlights
Chat scoped to an event
The chat belongs to the event rather than to a permanent group, so it appears with the fixture and stops mattering when the fixture is over. That single scoping choice is what keeps it useful instead of becoming another muted group.
Performance to leaderboard
A coach's score against a participant is the same record the leaderboard reads. There is no separate tally to reconcile, which is how season standings usually drift out of agreement with reality.
Role-gated navigation
Each role enters its own navigation graph after authentication. A participant's build has no route to a coach's scoring screen at all, rather than hiding it behind a disabled control.
Filtering that matches reality
A society member cares about two or three sports, not twenty. Filtering is a first-class part of the event list rather than a secondary screen, because an unfiltered feed is the same as no feed.
Technology
More case studies
Role-based campus communication with real-time announcements, faculty and student management, and push notifications.
Multi-role institutional attendance with offline capture, background sync, analytics, and an append-only audit log.
Every case study and product demo in one place, across logistics, field service, education, events, and SaaS.
Start the conversation
Registration, communication, and a record that lasts past the event are the three pieces most community platforms get wrong. Bring the workflow and we will scope it properly.