feat: Redesign Player Overview with expandable detail rows#226
Open
lordscarlet wants to merge 11 commits intoYourDeveloperFriend:mainfrom
Open
feat: Redesign Player Overview with expandable detail rows#226lordscarlet wants to merge 11 commits intoYourDeveloperFriend:mainfrom
lordscarlet wants to merge 11 commits intoYourDeveloperFriend:mainfrom
Conversation
Merge from YourDeveloperFriend
Merge changes from base
…cker Compose. the wildcard operator does not play well in Windows.
…operFriend#221) - Add expandable rows with chevron toggle for each player - Financial details panel: money, income, expenses breakdown, net income - Score breakdown panel with income/shares/track point components - Income track visualization with color-coded zones and player pip - Locomotive upgrade impact panel (shown when loco < 6) - Bidding impact section during auction phase with scenario analysis - Score tooltip on hover with aligned table layout - Warning indicators for income loss (amber) and elimination risk (red) - Eliminated player visual treatment (strikethrough, badge, dimmed row) - Full dark mode support - Responsive layout with column collapsing and grid stacking
lordscarlet
commented
Feb 25, 2026
Contributor
Author
There was a problem hiding this comment.
This change was necessary in order to run the container on a Windows machine.
lordscarlet
commented
Feb 25, 2026
Contributor
Author
There was a problem hiding this comment.
Let me know if you don't want this in the repository, but I find it useful to have when working in VS Code.
There was a problem hiding this comment.
Pull request overview
Redesigns the in-game Player Overview to support per-player expandable detail rows, adding richer financial/scoring context and new UI affordances (warnings, tooltips), plus small DX improvements for Docker/VS Code workflows.
Changes:
- Add
PlayerExpandedRowwith financial details, income-track visualization, loco-upgrade impact, score breakdown, bidding impact, and warning banners. - Update
PlayerStatsto support expandable rows, warning indicators, eliminated styling, and a score breakdown tooltip. - Improve local dev ergonomics via Docker rebuild triggers, README guidance, and VS Code tasks.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| src/client/game/player_expanded_row.tsx | New expanded detail row UI + warning logic + auction bidding impact section + score tooltip content |
| src/client/game/player_expanded_row.module.css | Styling for expanded row content, panels, warnings, bidding section, and tooltip |
| src/client/game/player_stats.tsx | Adds chevron expand/collapse per player, warning icons, eliminated/current-player styling, and score tooltip |
| src/client/game/player_stats.module.css | Adds styling for chevron button, warning icons, money/score cells, row highlighting, and tooltip dark-mode |
| docker-compose.yml | Adjust watch rebuild triggers for package.json/package-lock.json (Windows-friendly) |
| README.md | Add container rebuild instructions |
| .vscode/tasks.json | Add VS Code tasks for common Docker compose workflows |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
- Fix totalColSpan calculation to include collapsed columns (change from +4 to +6) - Fix BiddingImpactSection to use current phase instead of hardcoded TURN_ORDER phase - Fix React key warning by using keyed Fragment instead of shorthand <>
…om/lordscarlet/choochoo into feature/expand-player-overview-221
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes #221 — Redesigns the Player Overview component with expandable detail rows for each player, providing at-a-glance financial health, score breakdowns, and strategic information.
Changes
New Components
Modified Components
Visual Features
Screenshots
Collapsed View (Default)
Expanded View — Financial Details & Score Breakdown
Expanded View — Income Track Visualization
Expanded View — Locomotive Upgrade Impact
Score Tooltip (Hover)
Warning Banner — Income Loss (Amber)
Warning Banner — Elimination Risk (Red)
Eliminated Player
Bidding Impact (Auction Phase)
Dark Mode
Responsive / Mobile View
Files Changed
src/client/game/player_expanded_row.tsxsrc/client/game/player_expanded_row.module.csssrc/client/game/player_stats.tsxsrc/client/game/player_stats.module.cssTesting
npx tsc --noEmit)A note on the edge cases: I do not have data to test those -- what you see for those screenshots are from my mockup. I can go through the trouble of figuring out how to get those states in a game, but I don't currently have them.