- Rename app from FantasyCron to GameTime across all templates and code
- Update league color palette to 6 visually distinct colors (navy, gold, purple, pink, turquoise, plum)
- Add subtle league footer to game cards showing which leagues have players with player counts
- Bump version to 1.0.0
- Update Docker compose service name to match rebrand
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Reverted /<username> and /<username>/<week> routes to original behavior
- Loading screen was causing infinite hang due to routing issues
- Kept caching improvements for better performance
- App now works normally with fast cached API calls
- Can implement progressive loading differently in future
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Performance Improvements:
- Added loading template with skeleton UI and progress animations
- Split routes: show loading state immediately, then fetch data
- Added memory cache for API responses (5-minute TTL)
- Cached expensive calls: user lookup, NFL state, user leagues
- Meta refresh redirect instead of JavaScript for no-JS requirement
User Experience:
- Immediate page load with branded loading screen
- Skeleton UI shows expected layout structure
- Progress bar and spinner animations during load
- Users see something instantly instead of blank page
Technical Details:
- /<username> and /<username>/<week> now show loading.html first
- /<username>/<week>/data route handles actual API calls
- Simple memory cache with fallback to stale data on errors
- CSS animations for loading states and skeleton placeholders
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Changed URLs from sleeper.com to sleeper.app for better mobile deep linking
- sleeper.app domain provides proper universal links for iOS/Android
- League names and player clicks should now open correct league in mobile app
- Maintains web browser functionality while improving mobile experience
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Wrapped player pills in anchor tags linking to Sleeper league pages
- Both starters and bench players now clickable and link to their league
- Added CSS styling for player-pill-link to maintain existing appearance
- Players maintain hover effects and position-based colors when clickable
- Links work on both web and mobile (Sleeper app deep links)
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added missing POST route for refresh button at /<username>/<week>/refresh
- Fixed 404 error by redirecting refresh POST to dashboard route
- Made league names clickable links to Sleeper league pages
- Added CSS styling for league name links with hover effects
- Sleeper URLs work on both web and mobile (app deep links)
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added injury status processing in app.py to check multiple Sleeper API fields
- Filter out 'Active' status to only display actual injury conditions
- Added injury status display in dashboard template with red styling
- Added CSS styling for injury status badges with red color and border
- Only non-active injury statuses (IR, SUS, PUP, DNI, Questionable, OUT) will be shown
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>