CoachCanvas.
A mobile app helping grassroots football clubs manage onboarding, squads and match preparation.
- Platform
- Android mobile app
- Role
- UX/UI Designer · UX Researcher · Full-Stack Developer
- Timeline
- 2025

01 / CONTEXT
Problem and response
Challenge
Grassroots football clubs often run on scattered WhatsApp threads, spreadsheets, informal approvals, and coach memory. That creates friction for onboarding, player management, and match preparation.
Response
CoachCanvas gives coaches and players role-specific flows, branded club spaces, join-code access, approval workflows, and state-aware navigation so each user lands in the right part of the club journey.
02 / CONTRIBUTION
What I owned
UI / UX
- +Designed coach and player onboarding as separate guided flows.
- +Created club identity, join-code, approval, and role-specific home experiences.
- +Designed mobile screens for squads, player profiles, match history, and formation planning.
Full-Stack Development
- +Built the Android app with React Native, TypeScript, and React Navigation.
- +Implemented Firebase Authentication, Firestore, and Firebase Storage workflows.
- +Prepared and debugged the Android release build pipeline.
03 / PRODUCT
Selected interface
A focused view of the product states and workflows that carry the core experience.




04 / DECISIONS
How the system took shape
- 01
Separated coach and player onboarding so each role only sees the decisions that matter to them.
- 02
Mapped the app around user state: unauthenticated, profile incomplete, club owner, pending join request, approved player.
- 03
Built state-aware navigation with React Navigation so users always land in the correct flow.
- 04
Structured Firestore around users, clubs, players, and join requests to keep ownership boundaries clear.
05 / OUTCOME
Outcome and reflection
CoachCanvas demonstrates the full product loop: problem framing, UX flows, mobile UI, backend structure, role-based logic, and release preparation.
The biggest learning was that mobile product quality depends as much on state design as visual design. The app needed to understand where each user was in the club journey before any screen could feel simple.