Everything you need to run league nights with Croke.
The Croke organizer app helps you run crokinole league nights efficiently. Access it at croke.app/league. This guide covers league setup through running sessions and viewing results.
When you first open the app, you'll create or join a league:
Leagues are organized into seasons. To create one:
Add roster members for players who have paid into the league and are officially part of the season.
Roster members can link their accounts to track game history in their personal dashboard at croke.app/me.
To link a roster member:
Once linked, the player's name appears in bold with a cyan outline in the roster, and all their league matches will automatically appear in their personal dashboard.
Linking also restores eligible matches from completed league sessions and sets the player's affiliation to your registered league. Existing history is preserved; appearances recorded as a guest are excluded.
If a step cannot finish, the link screen shows what needs attention. Select Retry to finish the same link, including replacing an older affiliation with this league. You can also select Check linked players below the roster to check existing accounts and retry an individual player. If an older linked account belongs to a different league, choose the clearly labeled affiliation action to replace it. The check itself does not change any data.
Each league night is a "session". To start one:
To reuse the same physical tables each league night, open Settings → Session Defaults → Tables. Save each table code and its two disc colors there. The table list will be prepopulated when you open New Session, where you can still add, edit, remove, reorder, or recolor tables for that session without changing the season defaults.
Once players are checked in:
The warm-up begins when the organizer starts a round, followed by the round timer. The break begins when the round timer expires if auto-advance is enabled, or when the organizer ends or resets the round. Player phones show only the warm-up and round timers; during the break, the expired round timer stays at 0:00.
As players score on their phones, you'll see match states:
Click the lock icon on a current match to edit its scores. Completed matches remain editable under Previous Rounds; review the before-and-after totals and confirm the correction before it is applied.
If a round was generated or started accidentally, use Reset Round. After confirmation, this closes its table assignments, removes that unended round and its scores, and returns the session to the break. Completed historical rounds are not affected.
As players submit scores from the Player Portal, results appear automatically on match cards. You don't need to do anything until:
When a conflict occurs, ask teams to verify their entries. Most conflicts resolve themselves when players correct their mistakes in the Player Portal.
If needed, click the match card to manually unlock, enter correct scores, and lock the match.
When all rounds are complete:
Results are automatically added to standings. A session cannot end while any generated round remains unended. Start and complete it, or use Reset Round to remove it.
To remove an erroneous completed round, use Delete Round under Previous Rounds. The organizer must type the displayed confirmation phrase, and deletion is unavailable while another round is active.
The Season tab shows cumulative stats across all sessions: