Roster

Manage your players, profiles, and projected minutes.

The Roster page (/roster) is the source of truth for every player in your program. Most generation in BenchOS pulls from this data — the deeper your player profiles, the more contextual your practice plans, dev plans, and game briefs become.

The roster index

Two tabs:

  • Active Roster — every player currently on the team, sorted alphabetically by last name
  • Archived — players who've been archived (transferred, graduated, etc.); they don't appear in generation but their history is preserved

Each row shows:

  • Player name and avatar
  • Position
  • Year
  • Role
  • Projected Minutes (or Set → if not configured)

A minutes-budget banner appears at the top if your projected minutes exceed the team's available capacity for your game format.

Adding a player

Click Add Player to open the modal. Required fields are first name, last name, position, and role; year is optional. Once added, the player shows up immediately in the Active Roster — open their profile to fill out the rest.

The player profile

Click any player to open /roster/[playerId]. Sections include:

  • Bio — name, photo, position, year, role, projected minutes, plus physical attributes (height, weight, wingspan, vertical). Click the pencil icon to edit. To upload a player photo, click Add photo (or Change photo if one is already set) — pick an image, crop to square, and save.
  • Scouting Report — preset tag chips for Offensive Strengths/Weaknesses, Defensive Strengths/Weaknesses, Physical Attributes, and Intangibles (e.g. High IQ, Toughness).
  • Goals & Notes — free-text space for the player's seasonal goals and your coaching notes.
  • Dev Cards — the player's lightweight, persistent development picture (see Player Development for the difference between dev cards and dev plans).

Archiving and restoring

From a player profile, click Archive Player. You'll get a confirmation dialog before the move. Archived players hop to the Archived tab and stop showing up in roster pickers and generation — but they're never deleted, so you can restore them at any time from the Archived tab.

Why this matters

Roster context flows into every other surface: practice plans pull projected minutes for load distribution, game briefs use availability and matchups, dev plans use scouting tags and goals to prioritize. Time spent on player profiles compounds — it makes everything downstream sharper.