Skip to content

Authentication — How Sign-In Works

We use Clerk for sign-in and account security. Everything else — which organization you belong to, what role you have, who your kids are — lives in our own database.

Why This Matters

Clerk is great at the hard security stuff (passwords, social login, 2FA). But it charges per-user for organization management, and our leagues can have thousands of parents. So we handle org membership ourselves — simpler and cheaper.

How a New User Gets Started

1
📱
Open App
Splash screen loads
2
🔐
Sign In
Email + password or create account
3
✉️
Verify Email
6-digit code sent to inbox
4
🎟️
Join Org
Scan QR code or enter invite code
5
👤
Role Setup
Depends on your role (see below)
6
🏠
You're In!
Teams, schedule, scores, chat
👪 Parent
Find My Child by name Confirm the match See their team & schedule
🧑‍🏫 Coach
Confirm team assignment Optionally link as parent too Manage your roster
⚾ Umpire
Complete your profile Wait for admin approval Get game assignments
👑 Admin
Instant access Manage invites & approvals Full org control

Multiple Roles

A user can have more than one role. For example, a coach who also has a child on the team gets both the Coach and Parent roles. They see all features for both roles.

A user can also belong to multiple organizations — for example, if their kids play in two different leagues. The app lets them switch between orgs without signing out.

Clerk Configuration

SettingValue
App NameG2 Elite
Publishable Keypk_test_...
Webhook URLg2-elite-webhook.2pw.workers.dev/api/webhooks/clerk
Webhook Eventsuser.created, user.updated, user.deleted
OrganizationsDisabled (we manage this ourselves)

Internal Documentation — Do Not Share