Commit Graph

6 Commits

Author SHA1 Message Date
Cal Corum
0338fe1b38 Merge remote main branch 2026-01-28 13:54:59 -06:00
Cal Corum
acff270579
Initial commit 2026-01-28 13:52:42 -06:00
Cal Corum
3adc064a42 Fix Gameday lineup row selection and deselect behavior
- Fix bug where clicking to select a player in the middle of the lineup
  would operate on the last added player instead of the clicked row
- Deselect now requires clicking the same row twice (for screenshots)
- Clicking the table after deselect re-enables selection mode
- Fix main.py to actually launch the TUI app
- Add CLAUDE.md with codebase documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 13:47:03 -06:00
Cal Corum
9c59c79c98 Add Settings screen with YAML configuration
- New Settings screen (press 'x') for configuring app settings
- Settings stored in data/settings.yaml (user-editable)
- Editable fields: team abbrev, season, API URL, API key (masked), theme
- Team validation against database before saving
- Read-only team info display from database (name, sWAR cap, ID)
- Load order: defaults -> .env -> settings.yaml
- Added pyyaml dependency
2026-01-27 16:24:28 -06:00
Cal Corum
3c76ce1cf0 Add Lineup Builder, Gameday screen, and matchup scoring system
Features:
- Lineup Builder screen: set batting order, assign positions, save/load lineups
- Gameday screen: integrated matchup scout + lineup builder side-by-side
- Matchup Scout: analyze batters vs opposing pitchers with standardized scoring
- Standardized scoring system with league AVG/STDEV calculations
- Score caching for fast matchup lookups

Lineup Builder (press 'l'):
- Dual-panel UI with available batters and 9-slot lineup
- Keyboard controls: a=add, r=remove, k/j=reorder, p=change position
- Save/load named lineups, delete saved lineups with 'd'

Gameday screen (press 'g'):
- Left panel: team/pitcher selection with matchup ratings
- Right panel: lineup builder with live matchup ratings per batter
- Players in lineup marked with * in matchup list
- Click highlighted row to toggle selection for screenshots

Other changes:
- Dynamic season configuration (removed hardcoded season=13)
- Added delete_lineup query function
- StandardizedScoreCache model for pre-computed scores
- Auto-rebuild score cache after card imports
2026-01-25 14:09:22 -06:00
Cal Corum
5b307a91a6 Initial SBA Scout TUI application
- Dashboard with roster summary (Majors/Minors/IL counts, sWAR usage)
- Roster screen with tabbed view (Majors/Minors/IL) showing:
  - Batters table: Name, Hand, Positions, vL/vR/Ovr ratings, sWAR, Defense
  - Pitchers table: Name, Hand, Positions, vL/vR/Ovr ratings, sWAR, S/R/C endurance
- Card data importer from BatterCalcs/PitcherCalcs CSV exports
  - Imports pre-calculated vL/vR/Total ratings directly from spreadsheet
- API client for syncing players/teams from Major Domo league API
- SQLite database with SQLAlchemy async models
- Configurable settings via .env (team info, roster slots, sWAR cap)
- Placeholder screens for Matchup Scout, Lineup Builder, Transactions
2026-01-25 00:22:20 -06:00