Coach Companion is a private, single-team workspace for planning soccer rotations and carrying the same plan through game day. It replaces the spreadsheet where every game is a sheet, every player is a row, and every column is a chunk of playing time.
The app does not try to automate away the coach. It generates a fair starting point, makes problems visible, and keeps the judgment calls easy to change.
- Source: byronwall/soccer-schedule
Interface

How it works
A coach adds the roster and season schedule, confirms availability for the next game, and generates an eight-segment rotation across four quarters. The generator balances planned minutes while accounting for midfield work, goalkeeper continuity, positional variety, and the size of the bench.
The schedule can be reviewed by position or by player. Coaches can drag players within a segment, use an accessible cell picker, lock assignments, undo changes, and keep advisory quality warnings visible. Publishing creates a stable snapshot for printing, season totals, and game-day mode. If the plan needs another adjustment, Edit again starts from an exact draft copy rather than throwing the schedule away.
During the game, the live view combines the current lineup, bench, and clock. Temporary substitutions never rewrite the published plan, so an injury or rest change does not quietly alter the season record.
Highlights
- Private two-coach workspace with file-backed persistence
- Roster, player profiles, availability, and season game management
- Fair rotation generation for four 14-minute quarters and eight segments
- Drag-and-drop schedule editing with durable player colors
- Advisory checks for minute balance, midfield load, goalkeeper changes, and long bench stretches
- Published schedule revisions, undo/redo, print view, and mobile game-day controls
- Editable position labels backed by stable domain IDs
- SolidStart server actions, Zod boundaries, Vitest, and a Docker/Coolify deployment path
