Admin Help
Documentation for each admin page and function. Use the quick links below to jump to a section.
Production admin account
In production, create an admin user with
ADMIN_PASSWORD=yourpassword npm run create-admin
(see docs/ADMIN.md in the repository for full details).
Admin Dashboard
Purpose: Central hub for admin tasks. From here you can access all admin tools and manage coach teams.
Coach Teams – Edit & Manage
Lists all teams that can log in as coaches. Each team has a school name, coach name, and login credentials.
- Edit: Opens the Edit Team page for that team
- Use this to correct team/school names, coach contact info, or reset passwords (single-team or bulk)
Shortcuts
- Ranking Totals (Points): View aggregated voting points by player
- View Each Coach's Vote: See how each coach voted
- All State Voting Control: Manage All State voting sessions, access codes, and dropped players
Edit Team
Purpose: Edit a team's information and credentials.
Team Information
- Team Name: Full team/school name (e.g., Francis Howell Central High School)
- School Name: Shorter display name (e.g., Francis Howell Central)
- Head Coach Name: Coach's full name
- Head Coach Email: Coach's email for contact
Reset Password
Set a new password for coach login. The coach will use this with their team name to log in for voting (All Conference, All State, All American) and Add Candidate.
Delete Team
Permanently removes the team and all associated votes. Use only for duplicates or teams that should no longer have access. This action cannot be undone.
Coach Votes
Purpose: View how each coach voted for All State or All American. (All Conference uses a shared nomination list on the coach voting page, not per-coach rank ballots here.)
Filters
- Award: All State (by round) or All American
- Year: Season year
- Round: For All State only – Round 1, Round 2, Round 3
Functions
- Load Votes: Fetches all submitted votes for the selected filters
- View Summary: Opens a modal with points aggregated by player (how many rank-1 votes, rank-2, etc.)
- Click a team's header to expand/collapse that team's full vote breakdown
Ranking Totals
Purpose: See aggregated voting points across all coaches. Total points = sum of points from each coach's vote (rank 1 = highest points).
Filters
- Award: All State (by round) or All American
- Year: Season year
- Round: For All State – shows points by position (Attack, Midfield, Defense, Goalie)
Use Cases
- Determine which players have the most support before the meeting
- Identify point thresholds when using "Drop all below threshold" on All State Control
- Compare players across positions for All State
All State Voting Control
Purpose: Control the All State nomination and voting process: team rankings, nomination quotas, nomination open/closed state, eligibility hints, pending approval, rounds, access codes, dropped players, Honorable Mention, and outlier detection.
Team Rankings and Nomination Quotas
Save team rankings before nominations open. Rankings determine auto-approved nominee slots: ranks 1-8 get 3, ranks 9-16 get 2, and ranks 17+ get 1. Teams without rankings use the default quota, which may be lower than the intended rank-based allotment.
Nomination Workflow
- Default quota: fallback for unranked teams.
- Allow new nominees: controls whether coaches can submit new Add Candidate rows. Editing existing nominees stays available.
- Pending approval: over-quota nominees appear on the ballot only when committee approve votes are greater than reject votes.
Eligibility CSV
All Conference 1st Team rows and optional CSV rows populate the Add Candidate dropdown/autofill hints. The All State vote page is driven by submitted roster nominations, nomination status, approval votes, and dropped-player state.
Year & Round
Select the year and round you're managing. Each round (Round 1, Round 2, Round 3) has its own session, dropped players, and voting data.
Voting Session & Access Code
- Access Code: Optional code given to coaches at the meeting. If set, coaches must enter it to vote.
- Status: Closed = coaches cannot vote. Active = voting is open.
- Set the access code before the meeting, then switch to Active when voting opens.
- Honorable Mention: Use the HM rounds after closing the All State final. The HM pool excludes All State 1st Team.
Coach Shortlist
The All State voting page lets each coach privately shortlist players for the selected year and round. Shortlist tags are stored separately from ballots and only narrow that coach's rank dropdowns when Shortlist only is enabled. They do not affect admin vote totals, exports, or player eligibility.
Dropped Players (this round)
Players removed from the voting pool for this round. They will not appear as options for coaches.
- Drop Player: Manually drop one player from the dropdown
- Restore: Click Restore on a dropped player to return them to the pool
Drop all below points threshold
Bulk-drop players whose points (from a prior round's votes) fall below the threshold. Use Ranking Totals to see current points.
- Source round: The round whose vote totals to use (e.g., Round 1)
- Global threshold (optional): Single number used for all positions if no per-position value is set
- Per-position thresholds: Attack, Midfield, Defense, Goalie – set independently. Leave blank to use global.
- View Ranking Totals (new tab): Opens the Ranking Totals page with year and source round pre-filled to see points before dropping
Outlier Detection
Flags votes that deviate significantly from the mean (e.g., a coach ranking a player much lower than others).
- Std Dev Multiplier: e.g., 2.0 = flag votes more than 2 standard deviations from the mean
- Coaches voted to apply: Check when coaches have agreed to apply the threshold before the meeting
- View Flagged Outliers: Shows individual votes that were flagged, with voter school and deviation details
All Conference Control
Purpose: Manage the data that drives All Conference coach vote-pool slots and committee final grids.
Rankings and Slots
Save each conference's team rankings for the selected year before coaches or committee members rely on slot checks. Per level, ranks 1-2 get 3 school slots, ranks 3-5 get 2, ranks 6-8 get 1, and unranked schools get 0 unless an override exists. Each level also has 5 open discussion slots plus returned slots.
Quota Overrides and Returned Slots
- Quota override: replaces a school's rank-derived quota for edge cases.
- Returned slots: adds unused school slots back to the open pool for 1st Team, 2nd Team, or Honorable Mention.
League Stats Zip
Upload a zip containing conference_players.csv and conference_goalies.csv for league-schedule-only stats. Coaches see these stats on the All Conference voting page.
Committee Final Grids
The committee saves final All Conference selections at /all-conference. Saved 1st Team rows feed All State Add Candidate dropdown/autofill hints for the year.
For questions about the voting process or awards rules, see the Rules page or contact the awards committee.