Changelog
Stay up to date with the latest features, improvements, and bug fixes. Track our development journey and see what's new in Game Vault.
Production Readiness, Search Overhaul, IGDB Optimization & Popular Algorithm
Consolidated Oct 7 updates: production/CORS hardening, search UX overhaul, IGDB query optimization, and popular games algorithm improvements. Includes category pagination fixes, Most Anticipated support, and performance-focused field selection.
Fixed
- Classic games using broken popularity_primitives API endpoint - switched to reliable top-rated endpoint
- Classic games category not working in all-games page due to missing route implementation
- Pagination hardcoded to single page for all category requests - now properly supports multiple pages
- Most Anticipated pagination showing same 24 games repeatedly - added proper page offset
- Recently Released only showing 16 games total - expanded date range from 30 days to 6 months
- View All links not working correctly for Recently Released and Most Anticipated sections
- Client-side IGDB service imports that would cause CORS errors in production
- Fixed popular games showing old games from 2000s instead of current popular titles
- Fixed 'Popular' and 'Top Rated' showing identical old games
- Popular now shows engagement-driven results, Top Rated shows quality-driven results
- Popular games now sorted by rating quality (70+) instead of rating count
- All-games page now shows highly-rated games instead of old titles with many ratings
- Default sorting now prioritizes game quality over popularity metrics
Improved
- CORS prevention - all client components now use API routes instead of direct service calls
- Added most_anticipated as separate category (distinct from upcoming)
- Category pagination now properly tracks pages and enables infinite scroll
- Recent games now include cover image filter for better quality results
- Title-to-category mapping supports both 'Recent Releases' and 'Recently Released' variations
- All explore section 'View All' buttons now navigate to correct category pages
- Popular games now show currently relevant titles (last 15 years) instead of all-time classics
- Algorithm now balances community engagement + quality rating + recency
- Increased minimum rating to 75 for higher quality results
- Increased minimum rating count to 20 for better community validation
- Sort by engagement (total_rating_count) to surface games people are actively playing
- Added release date filter: first_release_date >= last 15 years
- Changed sort from 'rating desc' to 'total_rating_count desc' for engagement
- Updated cache key to v3 to bust old cached data
- Popular = High engagement (20+ ratings) + Quality (75+ rating) + Recent (15 years)
- Optimized popular games query - removed wildcards, reduced payload by ~80%
- Optimized trending games query - now requests only essential fields
- Optimized upcoming games query - minimal field selection for better performance
- Optimized recent games query - focused field list for faster responses
- Eliminated duplicate API call in search - reduced from 2 calls to 1 (50% improvement)
- Faster JSON parsing due to smaller response payloads
- Improved cache efficiency with smaller, more focused cache entries
- Significant bandwidth savings across all game list/grid views
- Replaced wildcard fields (cover.*, genres.*, platforms.*, screenshots.*, videos.*, artworks.*) with specific fields
- Search now uses game data directly from /search response instead of making second /games call
- Detail views still use comprehensive fields, list views use optimized minimal fields
- Cache key updated to popular-games-v2 to bust old cached data
- Expected 70-80% reduction in response size for list/grid queries
- Expected 50% reduction in API calls for search operations
- Search dropdown now shows popular/recent searches when input is empty
- Better perceived performance with shimmer loading animations
- Enhanced user guidance with actionable empty state suggestions
- Search history automatically deduplicates and limits to 10 most recent
- Loading states support both grid and list view modes
- Empty states provide clear next steps and browse options
Added
- Pagination support for getMostAnticipatedGamesByPopScore method
- Most Anticipated category route implementation in /api/games
- Comprehensive CORS prevention audit documentation
- Cover image requirement for recent games (& cover != null filter)
- Search history tracking with localStorage persistence (30-day expiry)
- Popular searches dropdown showing recent and trending searches
- Recent searches with individual remove buttons and clear all functionality
- Enhanced loading skeleton with shimmer effects and staggered animations
- Contextual empty states with 4 variants (initial, no-results, no-filters, error)
- Quick search chips for popular games (Zelda, Mario, GTA, FIFA, etc.)
Achievements System Preview & Enhanced Footer
Introducing the achievements system preview and major footer improvements with proper studio branding.
Added
- Achievements page with coming soon preview
- Achievement categories and rarity system design
- Links to achievements throughout the platform
- Developer section in footer with roadmap and API docs
- Zenit Digital Studios branding and links
Improved
- Footer layout with 4-column navigation structure
- Enhanced footer branding and visual design
- Better responsive spacing in footer components
- Achievement-related component linking across platform
All-Games Filtering System Overhaul
Complete redesign of the filtering system with full IGDB integration and intelligent sorting.
Added
- Comprehensive filtering by platform, genre, rating, and year
- Intelligent sorting based on filter types
- Time range filtering (recent, this year, upcoming)
- Advanced filter combinations with proper validation
Improved
- Rating filter scale converted from UI (1-10) to IGDB (0-100)
- Enhanced filter parameter processing in API routes
- Better error handling for overly restrictive filter combinations
- Mobile-optimized cache times for better performance
Fixed
- Filter parameters were being ignored by API route
- Rating filters not showing highest-rated games first
- Time range options not matching backend implementation
- Genre and platform filtering not working properly
Video Gallery & Media Tab Fixes
Fixed video display issues across game pages and media galleries.
Fixed
- Media tab videos not displaying due to missing video_id field
- GameHero 'Watch Trailer' button not working
- Video data transformation losing crucial fields
- YouTube video embed URLs not generating correctly
Improved
- Enhanced video data processing pipeline
- Better video URL construction from IGDB data
- Preserved all necessary video fields through transformation layers
Explore Page Data Quality & All-Games Pagination
Major improvements to game data quality and pagination functionality.
Added
- Proper pagination support for all-games page
- Dynamic date calculations for recent/upcoming games
- Enhanced IGDB filtering with quality criteria
Improved
- Recently Released section now shows actual latest games
- Coming Soon section displays properly anticipated titles
- Unified data source priority preferring IGDB over RAWG
- Better sorting logic for different game categories
Fixed
- All-games pagination returning duplicate results
- Explore page showing incorrect data from wrong sources
- CSP violations from RAWG background images
- Date range logic not adapting to current system date
Authentication Architecture Overhaul
Complete redesign of authentication system with pure Supabase integration and enhanced type safety.
Added
- Pure Supabase authentication system
- Comprehensive TypeScript interfaces for auth states
- Unified component structure in /components/auth/
- Database function verification with MCP tools
- Enhanced error handling and user feedback
Improved
- 100% type safety across authentication flows
- Consolidated auth components and removed duplicates
- Better session management and state persistence
- Enhanced profile creation and user onboarding
Fixed
- Mixed NextAuth/Supabase architecture conflicts
- Duplicate SignIn/SignUp form components
- Authentication state inconsistencies
- Type safety issues with 'any' types throughout auth system
Deprecated
- NextAuth.js integration completely removed
- Legacy auth configuration files
- Duplicate auth component implementations
Infrastructure & Performance Optimizations
Major code quality improvements, component optimizations, and infrastructure enhancements.
Added
- React.memo optimization for performance-critical components
- Standardized authentication helper for API routes
- Consolidated type definitions and interfaces
- Enhanced error monitoring and reporting
Improved
- Removed duplicate components (GameCard, FriendCard variants)
- Fixed security vulnerabilities with innerHTML usage
- Consolidated Supabase client implementations
- Enhanced component structure and maintainability
Fixed
- Duplicate auth store implementations
- Mixed Supabase client usage (client vs server)
- Missing imports causing runtime errors
- Hardcoded API endpoints and validation issues
Enhanced Game Discovery & Review System
Major improvements to game exploration, filtering, and community review features.
Added
- Advanced game filtering by genre, platform, and rating
- Enhanced review system with community engagement
- Improved game recommendation algorithms
- Better search functionality with autocomplete
Improved
- Faster game data loading and caching
- Better mobile experience for game browsing
- Enhanced user profile customization options
- Improved challenge creation and management
Game Vault Launch
Initial release of Game Vault with core gaming tracking and community features.
Added
- User registration and authentication system
- Game library management and tracking
- Progress tracking for individual games
- Community features and friend system
- Review and rating system for games
- Challenge creation and participation
- Responsive design for all device types
Stay in the Loop
Follow our development journey and be the first to know about new features, improvements, and exciting updates to Game Vault.