What's New

Latest features and improvements to Orange FF

October 28, 2025
Latest
📋

Lineup Management Stats

Track how well managers set their lineups throughout the season with leaderboards for management skills.

  • Excellent Management (⭐) - Wins with optimal lineup (within 0.5 pts of best possible)
  • Mismanaged Games (⚠️) - Losses where optimal lineup would have won
  • No Chance to Win (💀) - Losses even with the best possible lineup
  • Bench Blunders (🤦) - Games with over 30 points left on the bench

Uses the same optimal lineup calculation logic as the matchup detail pages for consistency.

💤

Low Score Leaders

Track the lowest-scoring teams each week during the regular season, similar to high score leaders but for poor performances.

  • Displayed in season detail pages alongside high score leaders
  • Shows manager avatars and counts for each team
📊

Season Highlights Stats

Fun and engaging season statistics calculated from regular season games with colorful cards and quick links.

  • Biggest Blowout - Largest point differential with winner vs loser
  • Closest Game - Nail-biting matchup with smallest margin
  • Highest/Lowest Scores - Season's best and worst performances
  • Hot Streak/Cold Streak - Longest winning and losing streaks
  • Most Consistent - Manager with most predictable scores (lowest standard deviation)
  • Boom or Bust - Manager with wildest variance (highest standard deviation)
🏀

Playoff Bracket Visualization

Visual tournament bracket with intelligent game detection, placement labeling, and championship podium.

  • Smart bracket flow logic correctly identifies Final, 3rd, 5th, 7th, and 9th place games
  • Championship podium displays 1st, 2nd, and 3rd place winners with medals
  • Color-coded game labels: Gold (Final), Bronze (3rd), Orange (5th), Purple (7th/9th)
  • Bye week display for teams not playing in early rounds
  • Separate championship (1st-6th) and consolation (7th-10th) brackets
  • Week numbers and proper vertical alignment across columns
💾

Yahoo API Response Caching

Implemented intelligent response caching to dramatically reduce Yahoo API calls and prevent rate limiting.

  • Checks database for cached responses before calling Yahoo API
  • Historical data (2013-2024) cached indefinitely after first import
  • Default 7-day cache window for current season updates
  • Safe to re-run imports without hitting rate limits
  • Configurable via YAHOO_API_USE_CACHE and YAHOO_API_CACHE_DAYS

Yahoo API Rate Limiting

Implemented intelligent rate limiting with exponential backoff to prevent Yahoo API blocking during data imports.

  • Configurable delay between API requests (default: 1 second)
  • Automatic retry on rate limit (429) or server errors (5xx)
  • Exponential backoff: 1s, 2s, 4s delays for retries
  • Configurable via YAHOO_API_DELAY_MS and YAHOO_API_MAX_RETRIES
🏆

Manager Awards on Matchup Pages

Added 9 awards to recognize manager performance, lineup decisions, and matchup drama.

Team Awards:

  • Winner 🏆 - Green badge for winning team
  • Excellent Management ⭐ - Blue badge for winning with optimal lineup
  • Mismanaged ⚠️ - Red badge when lineup mistakes cost you the win
  • No Chance to Win 💀 - Dark red badge when even optimal lineup couldn't beat opponent's actual score
  • High Score 🔥 - Purple badge for highest score of the week
  • Low Score 💤 - Gray badge for lowest score of the week
  • Bench Blunder 🤦 - Orange badge for leaving 30+ points on bench

Matchup Awards:

  • Nail Biter 😰 - Yellow badge for games decided by < 5 points
  • Blowout 💥 - Indigo badge for dominant wins by 40+ points

Note: High score indicators now use 🔥 flame emoji throughout the app (managers page, seasons page, matchup lists)

🎯

Best Possible Lineup Fix

Fixed bug where best possible score was sometimes showing lower than actual score. Algorithm now dynamically detects roster structure and works across all seasons.

  • Fixed hardcoded roster structure (was 2 WR + 1 FLEX, actual is 3 WR + 2 FLEX)
  • Dynamically detects roster structure from actual starters each week
  • Works across all seasons regardless of league settings changes
  • Best score now guaranteed to be ≥ actual score
🔧

Import System Bug Fixes

Fixed critical duplicate data issues in the import system. Removed 2,018 duplicate transaction records and made all imports fully idempotent.

  • Fixed duplicate transaction records (76% of records were duplicates)
  • Added unique constraint on transaction and performance records
  • Import scripts now use upsert logic to prevent duplicates on re-import
  • Safe to run historical imports multiple times without data corruption
🐳

Docker Development Mode

Added Docker development mode with hot-reloading for faster development workflow.

  • No more rebuilding containers for small code changes
  • Changes appear in 1-2 seconds with volume mounts
  • Use docker-compose.dev.yml for development workflow
October 27, 2025
🎯

Best Possible Lineup Analysis

Ever wonder what your score would have been if you'd started the right players? Now you can see your "Best Possible Score" on every matchup page.

  • See exactly how many points you left on the bench
  • Calculates the optimal lineup considering all position eligibility
  • Find out if lineup decisions cost you the win
📊

Projected vs Actual Scores

Matchup pages now show projected scores alongside actual scores.

  • See if your team over-performed or under-performed projections
  • Color-coded indicators show performance at a glance
🔧

Complete Historical Stats (2013-2020)

Fixed player statistics for seasons 2013-2020. All matchups now show accurate player-by-player breakdowns for the entire league history.

  • Over 90% of historical player performances now display correct point totals
  • View complete roster breakdowns for all 13 seasons
October 26, 2025
🎉

Orange FF Launch

Welcome to Orange FF - your complete fantasy football league history spanning 13 seasons!

  • 13 complete seasons (2013-2025) with 1,006 matchups
  • Manager rankings with career statistics and high scores
  • Head-to-head records and top players for every manager
  • Complete matchup breakdowns with player rosters and points
  • Season browser with champions and standings
  • League records tracking top performances
  • Dark mode support for late-night browsing