Release history
Changelog
Every new feature, fix and speed-up on s&box Explorer, newest first.
- Last 30 days
- 90
- Features shipped
- 233
- Fixes
- 218
- Days with changes
- 66
156 changes in November 2025 Clear filters
November 2025
4
-
Feature
1:18 PM
Add social link validation with platform selector and Font Awesome icons
Details
- Implement Discord-style platform selector with 19 verified platforms
- Add handle-based input (users enter username only, URL auto-generated)
- Integrate Font Awesome 6.7.2 for brand icons (Twitter, GitHub, Discord, etc.)
- Add domain validation with whitelist/blacklist from online sources
- Create tool to fetch blocked domains from UT1 blacklists
- Display social links as icon-only circular buttons on profiles
- Improve modal layout with better spacing and visual hierarchy
- Add green gradient to Save Widget button
- Enhance social link icons with hover effects and animations
c3979e4 -
Feature
10:23 AM
Enhanced reputation & badges system with 100 levels, featured badges, and Material Symbols
Details
- Upgraded to 100-level system with exponential scaling (15% per level)
- Replaced all emoji icons with Material Symbols for consistency
- Added Steam playtime integration for accurate tracking
- Implemented featured badges system (max 5) displayed in profile hero
- Color-coded badges by category (gold/purple/green/pink/blue/etc)
- Added badge management modal with blur backdrop and animations
- Extended badge tiers: creator (5000 packages), downloads (100M), playtime (50k hours)
- Improved badge sorting by category color for visual organization
- Added API endpoint for featured badge management
- Enhanced UI with hover effects, checkmarks, and color-coded borders
7a72192 -
Feature
9:25 AM
Implement Tippy.js tooltips and remove counter animations
Details
- Add Tippy.js with Popper.js for tooltips
- Create tippy-init.js for centralized tooltip management
- Add custom Tippy CSS with theme support
- Auto-convert title attributes to Tippy tooltips
- Remove duplicate tooltip implementations (microtip, custom CSS)
- Clean up theme-manager.js tooltip code
- Disable footer stats counter animation
6b01757 -
Feature
7:03 AM
Remove GLightbox, fix package detail lightbox implementation
300e5f1
3
-
Feature
11:33 AM
Unify public pages layout and styling
Details
- Add breadcrumb navigation to new-user-guide page
- Add lazy loading to leaderboard avatar images
- Update api-doc page to use .public-page-container
- Remove inline styles from api-doc and about pages
- Add utility CSS classes for consistent styling
- Create comprehensive property-based test suite
- Achieve 92% test pass rate (66/72 tests passing)
All public pages now share consistent header, footer, breadcrumbs, typography, spacing, and theme support.
ba70971 -
Feature
3:39 AM
Unify layout structure for all informational pages
Details
- Add consistent about-container wrapper to all pages
- Add breadcrumb navigation where missing
- Standardize header/footer includes
- Ensure theme-manager.js loaded on all pages
- Unified spacing, typography, and responsive behavior
Pages updated: leaderboard, api-doc, changelog, release-notes
dd69014 -
Feature
1:46 AM
Add followed packages system with automatic notifications
Details
- Created /followed page mirroring favorites functionality
- Added followed_packages table and API endpoints
- Integrated with notification system for package updates
- Added follow/unfollow buttons on package pages
- Navigation links in header and settings page
- Automated background tasks for update detection
- WSL cron setup for scheduled tasks
- Updated .gitignore for dev setup files
0c6863c
11
-
Feature
10:47 AM
Complete admin panel overhaul with routing fixes and UI improvements
Details
- Fix admin routing to use clean URLs with trailing slashes
- Add proper HTML structure and favicons to all admin pages
- Integrate Cal-Heatmap library for professional activity visualization
- Fix cache health chart display and API response handling
- Fix user lookup to fetch from s&box API when needed
- Add log deletion functionality with confirmation
- Fix timestamp handling across admin tools
- Improve activity heatmap with modern card-based design
- Fix SQL queries to handle DATETIME format correctly
- Add comprehensive styling improvements across all admin pages
c71d937 -
Feature
9:11 AM
Add widget content moderation and sidebar layout
Details
- Implement Steam-style profanity censorship ( symbols)
- Add external profanity word lists (1251+ words from trusted sources)
- Create widget validation system with URL auto-fixing
- Move widgets to dedicated sticky sidebar on right side
- Add 7 modern layout templates (Default, Creator, Gamer, etc.)
- Fix widget size persistence and auto-save
- Fix layout loading on page refresh
- Fix hidden containers staying hidden
- Add moderation logging for admin review
- Create profanity list update tool
- Add validation API endpoints
ad03679 -
Feature
5:52 AM
Remove Activity Timeline feature completely
Details
- Deleted activity timeline page, JS, CSS, and manager class
- Removed all activity tracking from favorites, follows, and package views
- Cleaned up settings page, profile page, and navigation
- Removed API routes and documentation
- Dropped user_activity table and activity_timeline_enabled column
- Fixed 'Favorited Unknown Package' issue by passing package names
- Kept Recently Viewed feature as simpler alternative
7c5fbde -
Feature
4:29 AM
Complete API endpoint synchronization and consolidation
Details
Major Changes:
- Consolidated notifications, favorites, and package-info endpoints into main API router
- Fixed follow button persistence issue (data.data.is_following access)
- Added missing delete_all action for notifications
- Updated .htaccess and router.php for consistent routing
API Endpoints Added to Main Router (backend/api/api.php):
- GET/POST /api.php/notifications - Follow/unfollow packages/orgs, manage notifications
- GET/POST /api.php/favorites - Add/remove favorites with activity tracking
- GET /api.php/package-info - Package details proxy for notifications
Frontend Updates:
- Fixed 11 JavaScript files to use consistent /api.php/ paths
- Added initial follow status check on page load
- Fixed response property access (data.data.is_following)
- Removed debug logging after fixes verified
Routing Updates:
- Consolidated .htaccess rules for cleaner routing
- Updated router.php for dev server consistency
- Removed redundant routing rules
Documentation:
- Added 20 new endpoints to api-doc.php
- Documented notifications, favorites, reputation, and package-info APIs
- Total documented endpoints: 70+
Bug Fixes:
- Follow button now persists correctly across page reloads
- Delete all notifications now works (400 error fixed)
- Response structure consistent across all endpoints
Total Routes in Main Router: 50 endpoints Files Modified: 15 files
8ab7c41 -
Feature
3:50 AM
Cache system v2 - Complete overhaul with critical fixes
Details
Major Improvements:
- Unified cache system (migrated from dual file/SQLite to single SQLite)
- Cache stampede protection with probabilistic early expiration
- Cascade invalidation system with tag-based cache clearing
- Cache versioning with automatic schema migration
- Backoff strategy integration for intelligent retry logic
- Orphan detection and cleanup tool
- Enhanced monitoring with comprehensive metrics
Core Changes:
- backend/includes/cache_manager.php: Added getOrSet(), cascade methods, versioning
- backend/api/api.php: Migrated Cache class to use CacheManager
- backend/api/refresh-worker.php: Integrated BackoffStrategy with error handling
- backend/includes/api_functions.php: Updated to use getOrSet() and tags
- backend/api/package-info.php: Added stampede protection
New Features:
- admin/cache-management.php: Admin UI for cache invalidation
- backend/api/cache-invalidation-api.php: API endpoint for cache management
- tools/cleanup-orphaned-cache.php: Automated orphan detection tool
- tools/migrate-cache-schema.php: Schema migration script
Monitoring:
- backend/includes/CacheHealthMonitor.php: Enhanced metrics (miss rate, refresh stats, lock contention)
Documentation:
- CACHE_UPGRADE.md: Quick start guide
- CACHE_IMPROVEMENTS.md: Complete technical documentation
Cleanup:
- Removed test files (api-test.php, test.php, pwa-test.html, test-org-page.html)
- Consolidated documentation into comprehensive guides
Performance Targets:
- Cache hit rate: >80%
- Stale entries: <5%
- Refresh success rate: >95%
- Average response time: <100ms
Breaking Changes:
- Requires schema migration: php tools/migrate-cache-schema.php
f4f204f -
Feature
3:15 AM
Add profile inactive detection system
Details
Implement comprehensive system to detect and display placeholder for profiles that have never been logged into or customized.
cd65f5d -
Feature
2:09 AM
Activity Timeline opt-in, Recently Viewed fixes, and profile improvements
Details
- Activity Timeline now OFF by default (user must enable in Settings)
- Added database migration for activity_timeline_enabled setting
- Activity Timeline checks enabled status before recording/displaying
- Fixed Recently Viewed tracking and added missing DELETE endpoint
- Added new user welcome message for profiles with no custom layout
- Fixed profile layout container visibility toggles in Manage Containers
- Unavailable containers now clearly marked (no data available)
- Fixed Reputation & Badges section responsive layout
- Published Packages now shows packages from claimed orgs (up to 12 total)
- Added comprehensive logging to profile layout save/load
- Fixed 'Start Customizing' button to properly enable edit mode
79ae688 -
Feature
1:36 AM
Add activity tracking for follow features and enhance error logging
Details
- Add activity tracking for package follow/unfollow operations
- Add activity tracking for organization follow/unfollow operations
- Add TYPE_PACKAGE_FOLLOW constant to ActivityTimelineManager
- Enhance error logging in notifications, favorites, and profile analytics APIs
- Create log rotation utility (tools/rotate-logs.php)
- All follow actions now properly recorded in user activity timeline
4b0d340 -
Feature
12:09 AM
Add leaderboard CSS to styles.css and clean up inline styles
Details
- Created frontend/css/leaderboard.css with all leaderboard page styles
- Added leaderboard.css import to styles.css
- Removed inline styles from leaderboard.php
- Proper CSS organization following project conventions
9c750bd -
Feature
12:07 AM
Add routing for leaderboard page
Details
- Added /leaderboard route to routing_logic.php
- Leaderboard page now accessible at http://5.66.186.198:8001/leaderboard
d5b8b11 -
Feature
12:06 AM
Implement Reputation System with full integration
Details
FULLY FUNCTIONAL REPUTATION SYSTEM:
- Integrated Reputation System into user profiles and site navigation
- Added comprehensive API endpoints for reputation data
- Created leaderboard page to showcase top contributors
- Enhanced profile display with badges and stats
API ENDPOINTS:
- GET /api.php/user/{steamId}/reputation - Get user reputation data
- GET /api.php/user/{steamId}/badges - Get user badges
- GET /api.php/user/{steamId}/reputation/history - Get reputation history
- GET /api.php/reputation/leaderboard - Get top users by reputation
- All endpoints include proper validation and error handling
LEADERBOARD PAGE:
- Created /leaderboard page with top 50/100 users
- Real-time data loading from API
- Medal indicators for top 3 users (gold, silver, bronze)
- User avatars, levels, and reputation scores
- Responsive design with mobile support
- Information section explaining how reputation works
PROFILE INTEGRATION:
- Reputation section already integrated in profile-reputation-section.php
- Displays reputation score, level, and progress bar
- Shows earned badges with categories and icons
- Stats breakdown (packages, downloads, playtime, achievements)
- Automatic reputation calculation on profile load
JAVASCRIPT ENHANCEMENTS:
- Created reputation.js module for interactive features
- Badge tooltip system with hover effects
- Progress bar animations
- Leaderboard rendering and filtering
- API integration for real-time data
NAVIGATION:
- Added Reputation Leaderboard link to Tools dropdown menu
- Easy access from any page on the site
REPUTATION CALCULATION:
- Based on packages created, downloads, favorites, ratings
- Includes s&box playtime, sessions, achievements, games played
- 12 level progression system (Newcomer to Legend)
- Multiple badge categories (creator, player, milestones, etc.)
- Automatic updates when user data changes
TESTING:
- Created comprehensive test script: tools/test-reputation-system.php
- Tests reputation retrieval, badge system, level calculation
- Verifies leaderboard and history functionality
- Validates API endpoints and database operations
FEATURES:
- Real-time reputation tracking and display
- Badge system with 50+ unique badges
- Level progression with visual indicators
- Leaderboard rankings with filtering
- Reputation history tracking
- Stats breakdown by category
- Responsive design for all devices
The Reputation System now provides gamification and recognition for community contributors!
91cf50d
5
-
Feature
11:04 PM
Complete rebuild of admin tools section with modern design
Details
- Rebuilt all 5 admin pages from scratch (user-lookup, log-viewer, activity-heatmap, bulk-actions, cache-health)
- Implemented modern card-based layout with gradient headers and Material Symbols icons
- Added real-time updates with auto-refresh capabilities
- Created comprehensive admin-tools.css with smooth animations and transitions
- Redesigned activity heatmap to horizontal GitHub-style layout (days across top, hours down side)
- Added toast notifications for user feedback
- Implemented loading states, empty states, and error handling
- Added hover effects, shimmer animations, and visual polish
- Fixed API type mismatch errors in activity heatmap
- All pages now use unified styles.css for consistent theming
- Responsive design with mobile-optimized layouts
- Better data visualization with charts and progress bars
- Improved UX with debounced search, keyboard shortcuts, and smooth scrolling
a48a5ce -
Feature
3:54 AM
Quirk Chungus
Details
Loadsa stuff
4ab2d25 -
Feature
2:20 AM
Improve package pages and organization hero sections
Details
- Add favorite button to package detail pages alongside follow button
- Update button text to 'Favorited' with dimmed styling when active
- Modernize package detail meta layout with left-aligned design
- Use organization avatar as hero background instead of gradient
- Improve visual consistency across all action buttons and stats
- Ensure all elements are properly aligned (44px height standard)"
4799cd3 -
Feature
1:51 AM
Complete organization pages overhaul with AJAX filtering and pagination
Details
Major improvements to organization pages for better UX and performance:
Features:
- AJAX-based filtering for smooth content loading without page reload
- AJAX-based pagination with page numbers (1, 2, 3, ..., 151)
- Browser back/forward button support with AJAX
- Follow button now works correctly and persists state
- Increased items per page from 9 to 12
- Favorite buttons work on dynamically loaded content
Bug Fixes:
- Fixed filter button selector (.filter-btn vs .org-filter-btn)
- Fixed follow button selector (.profile-follow-btn vs .follow-org-btn)
- Fixed follow button text update when no .btn-text element exists
- Added null checks to prevent JavaScript errors
- Filter parameter now preserved in pagination links
UI Improvements:
- Added styled page numbers to pagination
- Active page highlighted with gradient
- Smooth fade transitions during content load
- Clean pagination layout with Previous/Next buttons
- Ellipsis (...) for large page ranges
Performance:
- Only replaces .profile-packages-section instead of full page reload
- Reinitializes favorites, comparison, and lazy loading after AJAX
- Maintains scroll position and URL state
- Smooth animations and transitions
Files Modified:
- frontend/js/org-page.js - AJAX filtering and pagination
- frontend/js/org-follow.js - Follow button fixes
- frontend/js/favorites.js - Event capture phase
- frontend/js/package-comparison.js - Event capture phase
- frontend/user-profile-redesign.php - Pagination with page numbers
- frontend/css/user-profile-redesign.css - Page number styles
- backend/includes/routing_logic.php - 12 items per page, filter logic
- index.php - Cache-busting, follow button selector
Documentation:
- Added FINAL_FIX_SUMMARY.md
- Added DEBUGGING_GUIDE.md
- Added ORG_PAGE_FIX_SUMMARY.md
- Added QUICK_REFERENCE.md
d228b15 -
Feature
1:07 AM
Add profile activity feed implementation (disabled) and test tool
84503a7
21
-
Feature
9:45 PM
Add premium visual enhancements: animations, gradients, hover effects, and polish
a2cb21a -
Feature
9:32 PM
Add automatic s&box ownership badge detection on Steam login
d7eb864 -
Feature
9:18 PM
Add early adopter badge detection and implement all new badge tier checks
6fa3240 -
Feature
9:15 PM
Add badge rarity system and sort badges by rarity (rarest first)
47c8c88 -
Feature
9:12 PM
Add 70+ new achievement badges across 15 categories for future-proofing
e68dcef -
Feature
9:05 PM
Add Steam API playtime integration for accurate s&box playtime stats
cff66b7 -
Feature
8:36 PM
Add reputation system with org-specific badges and notification improvements
Details
- Add reputation calculation system based on claimed organization packages
- Add special badges for organization ownership (Facepunch Staff, Valve Staff, etc.)
- Add automatic reputation updates when orgs are claimed/assigned
- Add manual reputation recalculation API endpoint and admin buttons
- Add 'Remove All' notifications button with deleteAllNotifications API
- Add comprehensive API tools section to admin panel with all backend endpoints
- Fix missing api_functions.php include in reputation calculation
- Enhance notification system with Material Symbols icons
- Add reputation update triggers in org claims moderation workflow
9c2f1fe -
Feature
6:27 PM
Add advanced analytics API modules
Details
- analytics-advanced.php: Core advanced metrics including cache efficiency, cohort analysis, funnel metrics, user journey, and predictive analytics
- analytics-advanced2.php: User segmentation, performance percentiles, cache lifecycle, behavior patterns, session quality, peak analysis, and churn metrics
- analytics-advanced3.php: Engagement scoring, cache optimization suggestions, anomaly detection, user lifetime value, session flow, and comparative analysis
These modules provide comprehensive analytics capabilities for the admin dashboard with detailed insights into user behavior, system performance, and cache optimization.
c62a993 -
Feature
6:21 PM
Update new user guide with current features and org claiming info
Details
- Moved Reputation & Badges to main features section
- Added emphasis on claiming organizations to unlock reputation tracking
- Removed admin-only features (Admin Tools, Broadcast Notifications)
- Added UGC Charts, Changelog, Version History, and Dependency Visualization features
- Updated pro tips to highlight organization claiming for reputation system
- Improved feature descriptions to be more accurate and user-focused
6889cfc -
Feature
6:11 AM
Add comprehensive analytics dashboard system with advanced features
Details
## New Features
### Standard Analytics Dashboard (/admin/analytics.php)
- Real-time metrics with auto-refresh (60s)
- Executive summary with AI-generated insights
- 12+ core metric cards (users, sessions, cache, performance)
- Interactive time range selection (24h, 7d, 30d, all-time)
- Activity timeline visualization
- Popular packages tracking
- Cache type breakdown
- User engagement analysis (new vs returning users)
- Retention metrics (multi-session vs single-session)
- Session duration analysis (short/medium/long)
- Hourly activity distribution chart
- Top 20 active users leaderboard
- Cache efficiency metrics with compression rates
- Trend analysis vs previous period
- Cache operation performance breakdown
- Export to JSON functionality
- Print-friendly layout
- Keyboard shortcuts (Ctrl+R refresh, Ctrl+E export)
### Advanced Analytics Dashboard (/admin/analytics-advanced.php)
- **Real-Time Monitoring Tab:**
- Live data updates every 5 seconds
- Active users (1min & 5min windows)
- New sessions tracking
- Cache operations counter
- Response time monitoring
- Recent activity feed with avatars
- System memory usage
- **Predictions Tab:**
- Machine learning-based user growth forecasts (7d & 30d)
- Daily growth rate calculations
- Trend detection (growing/declining/stable)
- Volatility analysis with confidence scoring
- Best days for traffic identification
- Peak hours analysis (top 3)
- Cache growth predictions
- AI-generated recommendations
- **Comparison Tab:**
- Flexible period-over-period comparison
- Side-by-side metrics visualization
- Percentage and absolute change tracking
- Trend indicators (up/down/stable)
- Visual comparison grids
- **Behavior Tab:**
- User segmentation (power/regular/casual/inactive)
- Churn analysis (active/at-risk/churned)
- User journey metrics
- Session distribution analysis
- Lifetime value calculations
- Cohort analysis
## Backend APIs
### analytics-api.php
- Main analytics endpoint with comprehensive metrics
- User statistics with growth tracking
- Cache performance metrics
- Session analytics
- Performance monitoring
- Popular packages tracking
- Activity timelines
- User engagement calculations
- Retention metrics
- Hourly distribution
- Top users ranking
- Cache efficiency analysis
- Trend analysis
- Geographic distribution
### analytics-realtime.php
- 5-second refresh real-time data
- Active user tracking
- New session monitoring
- Cache operations counting
- Response time tracking
- Recent activity logging
### analytics-predictions.php
- Predictive analytics engine
- Growth rate calculations
- Trend detection algorithms
- Volatility analysis
- Confidence scoring
- Pattern recognition (best days/hours)
- Cache growth forecasting
- Automated recommendations
### analytics-comparison.php
- Period-over-period comparison
- Flexible time range selection
- Metric change calculations
- Trend direction analysis
### analytics-behavior.php
- Cohort analysis
- User journey tracking
- Churn rate calculations
- User segmentation
- Lifetime value metrics
## Technical Improvements
- Efficient database queries with proper indexing
- No new database tables required
- Uses existing infrastructure
- Optimized for large datasets
- Admin-only access with proper authentication
- Privacy-safe IP hashing
- Responsive design for all screen sizes
- Print-friendly CSS
- Loading states and error handling
- Empty state messages
- Smooth animations and transitions
- Color-coded metrics
- Professional UI/UX
## Security
- Admin authentication on all endpoints
- CSRF protection inherited from existing system
- Safe data handling
- No SQL injection vulnerabilities
- Privacy-compliant data processing
## Performance
- Minimal server overhead
- Caching where appropriate
- Optimized queries
- Efficient data processing
- Auto-refresh with configurable intervals
## Access Points
- Standard Analytics: /admin/analytics.php
- Advanced Analytics: /admin/analytics-advanced.php
- Links added to admin panel Quick Actions
This comprehensive analytics system provides enterprise-grade insights, predictive forecasting, and actionable business intelligence for the s&box Explorer platform.
2606130 -
Feature
5:07 AM
Add comprehensive org claiming security improvements document
Details
Created detailed design doc for preventing reputation abuse:
Quick Wins (Implement Soon):
- Protect top 20 organizations
- Rate limiting: 1 claim per day
- Claim limits: Max 5 orgs per user
- Audit logging for all claims
Proposed Solutions: 1. Admin approval system (recommended) 2. Email verification 3. s&box API integration 4. Reputation limits 5. Community reporting 6. Proof of ownership
Implementation Plan:
- Phase 1: Rate limits, protected orgs, logging
- Phase 2: Admin approval system
- Phase 3: Automated verification
Database schema updates included for audit logs and approval workflow.
Priority: HIGH - Should be implemented before public launch to prevent fraud.
12c586e -
Feature
5:03 AM
Add unclaim support to debug API and use it for unclaim button
Details
- Added unclaim action to claimed-orgs-debug.php
- Updated unclaim button to use debug version
- Will log unclaim attempts to help debug the 500 error
Try removing an org now and check data/claim-debug.log to see what happens.
350baa6 -
Feature
5:00 AM
Add debug version of claimed-orgs API with detailed logging
Details
Created claimed-orgs-debug.php:
- Logs every step of the process to data/claim-debug.log
- Shows exactly where the error occurs
- Logs all request data, authentication status, database queries
- Captures full exception details with stack trace
Temporarily updated settings.php to use debug version
To check logs after attempting to claim:
- Look at data/claim-debug.log
- Shows timestamp, action, and any errors
This will help identify the exact cause of the 500 error.
be48218 -
Feature
4:56 AM
Add protection for Facepunch and Valve organizations
Details
Protected Organizations:
- Facepunch: Requires 'facepunch_staff' user tag
- Valve: Requires 'valve_employee' user tag
How It Works: 1. User attempts to claim protected org 2. System checks if user has required tag via steam_tags.php 3. If user doesn't have tag, returns 403 Forbidden 4. Clear error message explains why claim was denied
Error Messages:
- 'You cannot claim the Facepunch organization. Only verified Facepunch staff can claim this organization.'
- 'You cannot claim the Valve organization. Only verified Valve employees can claim this organization.'
Benefits:
- Prevents reputation fraud
- Protects official organizations
- Uses existing user tag system
- Easy to add more protected orgs
- Clear feedback to users
To Add More Protected Orgs: Just add to the \ array: 'orgname' => 'required_tag'
dcb64e4 -
Feature
4:55 AM
Add output buffering and better error handling to claimed-orgs API
Details
Debugging Improvements:
- Added output buffering to catch any warnings/errors before JSON output
- Clear buffer before sending JSON response
- Added database null check
- Enhanced error logging with file and line number
- Added stack trace logging
- Added test endpoint for debugging
Test Endpoint:
- GET/POST with action=test
- Returns API status, database connection, and function availability
- Useful for debugging 500 errors
Error Response Now Includes:
- Error message
- File name where error occurred
- Line number
- Stack trace in logs
This should help identify what's causing the 500 error by ensuring clean JSON output and providing detailed error information.
357ab40 -
Feature
4:54 AM
Add cache check and background refresh for claimed orgs
Details
New Features:
- Checks if organization is in cache when claiming
- Triggers background refresh if org not cached
- Uses async curl request with 100ms timeout (non-blocking)
- Informs user if data is being cached in background
- Returns 'cached' flag in response
How It Works: 1. User claims an organization 2. System checks if org data is in cache 3. If not cached, triggers background refresh worker 4. User gets immediate success response 5. Message indicates if data is being cached 6. Reputation updates once cache is populated
Benefits:
- Ensures fresh data for newly claimed orgs
- Non-blocking - doesn't slow down claim operation
- User knows if they need to wait for data
- Automatic cache population for better performance
Example Response: { 'success': true, 'message': 'Organization claimed successfully. Data is being cached in the background - reputation will update shortly.', 'org_ident': 'myorg', 'claimed_at': 1234567890, 'cached': false }
88c9dcd -
Feature
4:48 AM
Implement organization claiming system for reputation
Details
New Feature: Claim Organizations
- Users can now claim their s&box organizations in Settings
- Claimed orgs link to user profiles for reputation calculation
- Reputation points earned from all claimed organizations
Database:
- Added claimed_orgs table with steam_id and org_ident
- Indexes for fast lookups
- Unique constraint prevents duplicate claims
Settings Page:
- New 'Claimed Organizations' section in Account tab
- Input field to claim organizations by name
- List of currently claimed orgs with remove buttons
- Validates org exists on s&box.game before claiming
API Endpoint (/backend/api/claimed-orgs-api.php):
- claim: Add organization to user's claimed list
- unclaim: Remove organization and recalculate reputation
- list: Get all claimed orgs for a user
- Validates org exists via s&box API
- Auto-recalculates reputation on claim/unclaim
Reputation Calculation:
- Aggregates stats from ALL claimed organizations
- Counts total packages, downloads, favorites, upvotes
- Updates reputation automatically when orgs are claimed/unclaimed
- Profile reputation section now uses claimed orgs data
How It Works: 1. User enters org name (e.g., 'pcjr') in Settings 2. System validates org exists on s&box.game 3. Org is linked to user's Steam ID 4. Reputation calculated from all claimed org packages 5. Badges awarded based on combined stats
Example:
- User claims 'pcjr' org with 10 packages
- Each package has downloads, favorites, upvotes
- All stats combined for reputation calculation
- User earns badges based on total achievements
This solves the issue where users couldn't get reputation credit for their organization's packages!
8be15d2 -
Feature
4:40 AM
Implement reputation and badge system on user profiles
Details
New Features:
- Reputation system now fully integrated into player profiles
- Displays reputation score, level, and progress to next level
- Shows earned badges with icons and descriptions
- Automatic reputation calculation based on:
- Packages created (10 points each)
- Total downloads (1 point per 100 downloads, max 1000)
- Favorites received (5 points each)
- Ratings received (2 points each)
Badge System:
- First Package: Created your first package
- Package Creator: Created 5 packages
- Prolific Creator: Created 20 packages
- Popular: 1,000+ downloads
- Viral: 10,000+ downloads
- Community Favorite: 100+ favorites
- Rising Star: 500+ reputation
- Veteran: 2,500+ reputation
- Legend: 10,000+ reputation
Level System:
- Level 1: 0-99 points
- Level 2: 100-499 points
- Level 3: 500-999 points
- Level 4: 1,000-2,499 points
- Level 5: 2,500-4,999 points
- Level 6: 5,000-9,999 points
- Level 7: 10,000+ points (max level)
Implementation:
- Created profile-reputation-section.php component
- Added reputation.css with beautiful gradient designs
- Integrated into user profile pages (player profiles only)
- Progress bar shows advancement to next level
- Responsive design for mobile devices
- Badges displayed in grid with hover effects
The ReputationSystem class was already built but unused - now it's fully integrated and visible to users!
cffbefc -
Feature
4:38 AM
Remove unimplemented features from new user guide
Details
Removed:
- Reputation & Badges system (class exists but not used anywhere)
- Dependency Graph visualization (not implemented in UI)
Replaced with:
- UGC Charts (actually functional with link to /ugc-charts)
- Detailed Package Info (describes existing package detail pages)
This ensures the guide only shows features that actually work, preventing user confusion and disappointment when they try to use non-existent features.
7ea9d79 -
Feature
4:27 AM
Complete notifications system implementation
Details
Features Added:
- NotificationManager: Core PHP class for notifications and following
- Follow system for packages and organizations
- Notification center with all user notifications
- Bell icon with real-time unread count in header
- Followed packages/orgs page with unified view
- Admin broadcast notification system
- Toast notifications for user feedback
- Organization follow buttons with status tracking
API Endpoints:
- /api/notifications/* - CRUD operations for notifications
- /api/follow/* - Follow/unfollow packages and organizations
- Package info proxy for thumbnail fetching
Frontend Components:
- notifications.js - Notification center manager
- org-follow.js - Organization follow functionality
- notification-bell.js - Header bell with unread count
- toast-manager.js - Global toast system
- Enhanced CSS for all notification components
Admin Tools:
- broadcast-notification.php - Send site-wide announcements
- Test notification creation tool
Database:
- followed_packages table
- followed_orgs table
- notifications table with types and read status
Routing:
- /notifications/all - View all notifications
- /notifications/following - View followed items
- Proper API routing for all endpoints
31404fd -
Feature
4:27 AM
Update new user guide to reflect current features
Details
- Replace Collections feature with Admin Tools section
- Update Admin Dashboard card to highlight Broadcast Notifications
- Clarify notification system with specific URLs and bell icon details
- Refine tips for follow system, PWA installation, and lazy loading
- Remove references to unimplemented features
- Ensure guide accurately represents production-ready functionality
3b7595c
12
-
Feature
5:01 PM
Add scheduled refresh system with 30-min cache monitoring
Details
- Add scheduled-refresh.php to check cache.db every 30 minutes for stale entries
- Create Windows Task Scheduler setup scripts (PowerShell and batch)
- Add test-scheduled-refresh.php for system verification
- Update README.md with comprehensive documentation:
- Add table of contents for better navigation
- Document scheduled refresh system setup
- Fix font references (Poppins, not Inter)
- Remove fictional API documentation (keys, rate limits, WebSocket, SDKs)
- Update project structure to match actual codebase
- Correct all configuration paths and examples
- Add troubleshooting sections for all major features
- System automatically triggers background refresh for stale orgs/users
- Prioritizes larger caches and handles lock files properly
- Logs all operations to logs/scheduled_refresh.log
1277f7a -
Feature
6:09 AM
Add summary stats and visual barchart
Details
- Add summary header showing total commits, days, and commits per hour
- Implement monthly activity barchart visualization
- Add interactive hover effects on bars
- Highlight current month and year with distinct colors
- Calculate statistics dynamically from git history
- Use solid colors for clean appearance
- Fully responsive design for all screen sizes
618e339 -
Feature
5:58 AM
Enhance changelog page with comprehensive stats and polished design
Details
- Add detailed repository statistics section with primary stats cards
- Display total commits, categorized commits with percentages
- Show commit types breakdown with individual percentages
- Add top contributors section with visual progress bars
- Display generation timestamp and contributor count in header
- Improve visual design with gradient backgrounds and accent lines
- Add staggered animations for stat cards
- Enhance hover effects on commit items and body sections
- Improve responsive design for mobile devices
- Add subtle decorative elements (top borders, left accents)
- Better spacing and padding throughout all sections
- Polish empty state with improved styling
- Enhance filter bar with gradient background
- Improve contributor items with left accent bars
- Add smooth transitions and animations throughout
6c13b1f -
Feature
5:30 AM
Implement comprehensive changelog system with advanced features
Details
- Add automatic changelog generation from git history
- Support conventional commits with 11 commit types
- Generate both JSON (for web) and Markdown (for docs)
- Implement breaking change detection and display
- Add scope badges and issue reference links
- Create beautiful web interface with filtering and pagination
- Exclude changelog.json from git tracking
- Only update files when changes are detected
ce2d0f8 -
Feature
5:07 AM
Enhance admin refresh-status page with user cache support and dual refresh options
Details
- Add support for both org and user package caches (TYPE_USER_PACKAGES)
- Display user caches with /u/ prefix URLs and person icons
- Show cache type badges (Org/User) in table
- Update stats to show breakdown (e.g., '5 Total (3 orgs, 2 users)')
- Fix cache key parsing to strip org_packages_, packages_, org_, user_ prefixes
- Add two refresh buttons:
- 'Refresh Stale Data' - only refreshes caches older than 30 min
- 'Refresh All Data' - refreshes all caches including fresh ones
- Refactor JavaScript into reusable performRefresh() function
- Improve confirmation dialogs with specific counts and warnings
- Better progress tracking with success/failure counts
- Fix refresh URLs to correctly handle both /username/ and /u/username/ paths
- Remove auto-refresh meta tag (manual refresh only)
- Add console logging for debugging refresh operations
7666339 -
Feature
4:26 AM
Add Game Boy theme (disabled) and fix CSS linting issues
c640d56 -
Feature
3:58 AM
Modernize admin panel and theme cache system for future-proof theme support
Details
- Enhanced admin/index.php with comprehensive improvements:
- Added CSRF protection for all POST actions
- Added Theme Cache Management card with live theme detection
- Added cache optimization actions (Clear All, Clear Expired, Optimize)
- Improved security with input sanitization
- Added visual theme badges showing all detected themes
- Better error handling and user feedback
- Modernized backend/api/clear-theme-cache.php:
- Added admin authentication and CSRF protection
- Implemented dynamic theme discovery (not hardcoded)
- Returns detailed metrics (theme count, names, sizes)
- Proper error handling and logging
- Works with any theme following metadata convention
- Completely rewrote backend/includes/generate-critical-css.php:
- Future-proof: automatically processes any theme file
- Extracts theme metadata from CSS comments with fallbacks
- Improved error handling and logging throughout
- Separates dark/light themes automatically
- Added regenerateCriticalCSS() for forced refresh
- Better caching with proper file locking
All changes support unlimited themes (not just Catppuccin palettes), include proper security measures, and provide excellent admin UX.
dd9fe8d -
Feature
3:49 AM
Add automatic Catppuccin theme system with 4 new themes
Details
- Add 4 Catppuccin themes: Latte (light), Frappé, Macchiato, Mocha (dark)
- Implement automatic theme discovery from frontend/css/ee/ folder
- Add auto-generated critical CSS system for instant theme loading
- Optimize theme loading: only load active theme CSS on page load
- Add cache management API endpoint for theme CSS regeneration
- Fix Macchiato theme: proper colors, transparent footer sections
- Fix Latte theme: better contrast with white cards
- Remove manual theme configuration - fully automatic system
- Themes now switch instantly without page reload
- No preload warnings - optimized CSS loading strategy
b8f1626 -
Feature
3:05 AM
Implement automatic theme discovery system with ultra-fast preloading
Details
Major Changes:
- Automatic theme discovery: Themes are now auto-detected from /frontend/css/ee/ folder
- No manual configuration needed - just drop a CSS file with metadata and it appears in settings
- Ultra-fast theme preloading with inline critical CSS to prevent flash of default theme
Theme System:
- Created backend/api/themes.php for automatic theme scanning
- Themes use metadata comments (Theme, Class, Emoji) for auto-configuration
- Updated theme-manager.js to dynamically load themes from API
- Added waitForThemes() promise to prevent race conditions
Theme Cleanup:
- Removed 19 unused/low-quality themes (kept only Default and Rust)
- Cleaned up styles.css imports
- Updated settings.php emoji mapping to use API data
New Themes:
- Perfected Rust theme with comprehensive styling
- Created AMOLED Dark theme as example (pure black, high contrast)
- Added theme-template.css with full documentation
Performance Optimizations:
- Inline script in <head> applies theme before first paint
- Critical CSS for instant background/text colors
- CSS preload hints for faster theme file loading
- localStorage caching for instant theme restoration
- Minified inline script (~100 bytes)
Documentation:
- Created frontend/css/ee/README.md with theme creation guide
- Added metadata format documentation
- Listed available Material icons for themes
Developer Experience:
- Create new theme: Copy template, add metadata, save - done!
- Themes automatically appear in settings
- No JavaScript or PHP configuration needed
- Full hot-reload support
ffc0a0d -
Feature
12:25 AM
Add Rust theme support to backend and additional pages
Details
- Added 'rust-theme' to valid theme list in API settings controller
- Included theme-manager.js on admin and donate pages for consistent theme support
- Ensures Rust theme can be saved and persisted across all pages
ff2641b -
Feature
12:24 AM
Add Rust theme integration
Details
- Added Rust theme to theme manager with crab emoji (🦀)
- Imported rust.css stylesheet
- Theme features Rust game-inspired color scheme with red/rust accents
181f09b -
Feature
12:21 AM
Add hard-coded scrollbar colors to all custom themes
Details
- Updated all 20 custom themes with hard-coded hex colors for scrollbars
- Added !important flags to override base.css default blue scrollbar
- Each theme now has scrollbar colors matching its unique color scheme:
- Catppuccin Mocha: Pink (#f38ba8)
- Cyberpunk: Magenta (#ff00ff)
- Deep Space: Violet gradient (#8b5cf6 #3b82f6)
- Dracula: Purple (#bd93f9)
- Emerald Oasis: Emerald gradient (#7dd3ae #5fb894)
- Forest: Green (#228b22)
- Gruvbox: Aqua (#83a598)
- Material Dark: Blue (#2196f3)
- Midnight Haze: Lavender (#9d8ec7)
- Minimal Dark: Blue (#74b9ff)
- Monokai: Orange (#fd971f)
- Nord: Frost blue (#88c0d0)
- Ocean: Blue (#1976d2)
- One Dark Pro: Blue (#61afef)
- Retro Terminal: Green (#0f0)
- Rust: Rust red (#cd412b)
- Solarized Dark: Blue (#268bd2)
- Sunset: Orange (#ff8c00)
- Synthwave: Magenta (#ff0080)
- Tokyo Night: Blue (#7aa2f7)
- Replaced CSS variable references with actual color values
- Ensures consistent theme-specific scrollbar appearance
fb29868
11
-
Feature
10:09 PM
Major UI/UX improvements for org and user profile pages
Details
User Profile Pages Enhancements:
- Enhanced profile header with gradient backgrounds and glow effects
- Improved avatar presentation with gradient border and better shadows
- Fixed avatar parallax (now stays fixed on scroll)
- Repositioned score badge directly under username with icon
- Larger, bolder typography with better spacing
- Enhanced stats cards with gradient borders and hover animations
- Improved player activity section with better card designs
- Added 3D tilt effect to game cards on mouse movement
- Implemented entrance animations with stagger effects
- Better responsive design for mobile devices
Organization Pages Improvements:
- Enhanced sidebar with modern type breakdown filters
- Improved package cards with better hover states
- Added gradient backgrounds and smooth transitions
- Better filter buttons with active state indicators
- Enhanced package overlay with fade-in effects
- Improved grid layout and spacing
- Added loading states and animations
Pagination Enhancements:
- Modern container design with gradient backgrounds
- Enhanced buttons with icon animations
- Smart ellipsis for large page counts
- Improved info display with package and page indicators
- Added Material Icons for Previous/Next buttons
- Smooth entrance and hover animations
- Better accessibility and responsive design
- Glow effect on active page
Animations & Effects:
- Entrance animations for all major sections
- Staggered fade-in effects for stats and cards
- Number counting animations
- 3D tilt effects on game cards
- Smooth transitions with cubic-bezier easing
- Shine effects on hover
- Reduced motion support
Accessibility:
- Improved focus states for keyboard navigation
- Better color contrast
- ARIA labels and semantic HTML
- High contrast mode support
- Screen reader friendly
Responsive Design:
- Better breakpoints (1024px, 768px, 480px)
- Mobile-optimized layouts
- Touch-friendly interactions
- Flexible grids that adapt to screen size
Technical:
- Created frontend/css/org-enhancements.css
- Enhanced frontend/css/user-profile.css
- Improved frontend/css/pagination.css
- Updated frontend/js/user-profile.js with new animations
- Updated frontend/js/org-page.js with enhanced interactions
- Added IMPROVEMENTS.md documentation
8eebd60 -
Feature
8:41 PM
Add Ko-fi donation system with webhook integration
Details
- Implement Ko-fi webhook handler for real-time donation processing
- Create public donation page (/donate) with supporter list and stats
- Add admin donation management interface with test donation creation
- Implement currency formatting helper for proper amount display
- Add donation database with SQLite storage and statistics tracking
- Secure verification token in config file (not committed)
- Add masked token display in admin panel with copy functionality
- Integrate donation link in footer navigation
- Style donation pages to match dark theme design system
aaafffc -
Feature
6:42 PM
Add custom video player and lightbox for news posts with themed controls and improved image galleries
ac23636 -
Feature
4:05 AM
Add generated API schemas from enhanced discovery script
df8a7be -
Feature
3:54 AM
Enhance schema.py: Add comprehensive endpoint discovery, stats tracking, and better error handling
b9638fb -
Feature
3:16 AM
Standardize breadcrumbs and fix package description rendering
Details
- Create centralized breadcrumb helper with consistent rendering
- Add proper ARIA attributes for accessibility (role, aria-label, aria-current)
- Implement auto-generated separators via CSS
- Fix 'About This Package' JSON rendering bug with proper parser
- Support JSON description structures (headings, lists, code, images, attachments)
- Update all 13 pages to use standardized breadcrumb component
- Consolidate breadcrumb CSS into packages.css
- Add responsive breadcrumb styles for mobile devices
- Remove unnecessary hover effects and animations
- Enhance description section CSS for tables, attachments, and additional elements
- Maintain theme consistency across all pages
Pages updated:
- index.php (package detail, user profile, error pages)
- settings.php, legal.php, about.php, credits.php
- newspost.php, news.php, orgnews.php, release-notes.php
- changelog.php, api-doc.php, ugc-charts.php
All changes validated with no syntax errors or diagnostics issues.
079cff7 -
Feature
3:07 AM
Add hover tooltips to footer social links
fa09589 -
Feature
3:01 AM
Add show more/less functionality for package tags
Details
- Show only first 5 tags by default when more than 5 exist
- Add toggle button to expand/collapse all tags
- Maintain accessibility with proper ARIA attributes
- Keep Material Symbols icons and existing styling
- Add smooth transitions and theme-consistent design
6911cfa -
Feature
2:56 AM
Add 'View on sbox.game' link to package detail pages
d0eb3e1 -
Feature
2:30 AM
Add Credits page with comprehensive acknowledgements
Details
- Created new Credits page (/credits) with full acknowledgements
- Special thanks section to Facepunch Studios with contact info
- Organized credits into sections: Core Tech, Frontend, Backend, APIs, Infrastructure
- Enhanced visual presentation with card-based layouts and icons
- Improved About page with mission statement and unique content
- Added 'What Makes Us Different' section highlighting key features
- Removed duplicate content between About and Credits pages
- Added Credits link to footer navigation
- Integrated Credits route into routing system
- Both pages now fully responsive and visually polished
d74e578 -
Feature
1:49 AM
Implement complete news article system with modern design
Details
- Add full news article routing and display system
- Fetch news from package LatestNews field and /news API
- Implement modern glassmorphism design for articles
- Add horizontal news card layout with hover effects
- Improve Description section with rich HTML rendering
- Add Latest News section to package detail pages
- Implement news article pages with sections, author cards, and hero media
- Add SEO meta tags (Open Graph, Twitter Card)
- Add breadcrumb navigation and back buttons
- Implement caching for news data
- Add proper 404 error handling
- Style news cards with gradient effects and animations
- Make all layouts responsive for mobile devices
b3bb6ad
13
-
Feature
7:58 PM
Add URL hash navigation for legal page sections
Details
- Support direct linking to specific sections via URL hashes:
- /legal#terms - Terms of Service
- /legal#privacy - Privacy Policy
- /legal#data-collection - Data Collection Details
- /legal#user-rights - Your Rights
- /legal#contact - Contact Information
- Auto-scroll to section based on URL hash on page load
- Update URL hash when clicking quick navigation items
- Handle browser back/forward navigation with hashchange event
- Add visual feedback for active navigation item
- Add .htaccess rewrite rule for /legal without .php extension
- Update settings.php link to use hash-based navigation
- Smooth scroll with header offset for better UX
188947b -
Feature
7:54 PM
Add URL hash navigation for settings tabs
Details
- Support direct linking to specific tabs via URL hashes:
- /settings#account
- /settings#privacy
- /settings#notifications
- /settings#appearance
- Auto-activate tab based on URL hash on page load
- Update URL hash when switching tabs (without page reload)
- Handle browser back/forward navigation with hashchange event
- Add .htaccess rewrite rule for /settings without .php extension
- Update legal.php links to use hash-based navigation
- Maintain backward compatibility with existing routing
660607c -
Feature
7:47 PM
Implement data portability feature for GDPR compliance
Details
- Add data export API endpoint at /backend/api/settings.php
- Implement 'Download My Data' button in Privacy & Data settings tab
- Export user data in machine-readable JSON format including:
- Profile information (Steam ID, username, avatar)
- User preferences (theme, layout, notifications)
- Session history with obscured IP addresses
- Update legal.php with data portability information
- Configure routing for /api/settings endpoint
- Add user-friendly UI with loading states and toast notifications
690832b -
Feature
7:34 PM
Add comprehensive Terms of Service and Privacy Policy page
Details
- Created fully functional legal page at /legal with ToS and Privacy Policy
- Added TL;DR summary section for quick understanding
- Implemented interactive features: smooth scrolling, section highlighting, copy-to-clipboard
- Added visual data retention timeline with color-coded badges
- Created comprehensive FAQ section with 8 common questions
- Enhanced data collection section with visual cards
- Added actionable user rights guide with step-by-step instructions
- Implemented version history tracking
- Added print/save as PDF functionality
- Included scroll-to-top button and notification system
- Updated footer with both official s&box Discord and s&box Explorer Discord links
- Added proper meta tags for SEO
- Fully responsive design consistent with existing codebase
- Print-friendly styles for documentation purposes
08a096c -
Feature
7:05 PM
Add login history tabs with privacy features
Details
- Added 3-tab interface: Active Now, Recent (7 Days), All History
- All History shows unique users only (no duplicates)
- IP addresses obscured in All History tab (e.g., 5.55.x.x)
- Added session duration and status badges
- Improved UI with Material icons and color-coded activity status
31ebd85 -
Feature
6:19 PM
Add commit type theming and filtering to changelog
Details
- Add visual distinction for commit types (feat, fix, chore, refactor, docs, style, perf, test, ci)
- Each type has unique color scheme, icon, and badge
- Add filter bar to view commits by type
- Filter buttons show commit counts per type
- Filters persist across pagination
- Mobile-responsive filter design
- Integrate seamlessly with existing theme system
20af283 -
Feature
6:10 PM
Comprehensive UI/UX optimization and admin user tracking
Details
Layout & Visual Improvements:
- Added consistent spacing variables (--spacing-xs through --spacing-2xl)
- Enhanced typography with responsive clamp() sizing for all headings
- Improved card hover effects with gradient overlays and animated accent lines
- Optimized package cards with subtle scale effects (reduced from 4px to 3px)
- Enhanced breadcrumb navigation with proper separators and hierarchy
- Added smooth transitions and reduced excessive hover effects for natural feel
Breadcrumb Enhancements:
- Fixed breadcrumb structure: Home Organization Package
- Removed manual '/' separators, added CSS-based separators
- Enhanced styling with hover effects and icon animations
- Improved accessibility with better focus states
- Added proper ARIA labels and semantic structure
Admin Panel - User Session Tracking:
- Created comprehensive session tracking system (config/session_tracking.php)
- Added user_sessions database table with indexes
- Implemented automatic activity tracking on page loads
- Created /admin/active-users.php showing real-time logged-in users
- Added session statistics: active now, today, this week, all-time
- Tracks Steam ID, username, avatar, IP address, login/activity times
- Auto-refreshes every 30 seconds for real-time monitoring
- Created /admin/test-sessions.php debug page for troubleshooting
Admin Panel UI:
- Added User Activity card with live statistics
- Enhanced visual consistency with gradient backgrounds
- Added animated accent lines on hover for cards
- Improved responsive design for mobile/tablet
- Better spacing and typography throughout
- Fixed Material Symbols icon loading and CSS
Routing & Access:
- Fixed router.php to allow direct access to admin PHP files
- Updated .htaccess to properly route admin and auth directories
- Ensured admin pages are accessible while maintaining security
Technical Improvements:
- Fixed SQL date/time queries for better SQLite compatibility
- Added proper error handling and logging
- Implemented session cleanup (30-day retention)
- Added database connection fallbacks
- All PHP files validated with no syntax errors
Thematic Consistency:
- Unified shadow depths and border treatments
- Consistent transition timing (0.2-0.3s) across all components
- Enhanced focus states for better accessibility
- Improved color contrast and visual hierarchy
1895788 -
Feature
5:32 PM
Add material symbols to footer navigation and sections
6379050 -
Feature
4:58 AM
Add new theme names to API validation list
f389d42 -
Feature
4:57 AM
Add three new themes: Deep Space, Emerald Oasis, and Midnight Haze with enhanced theme manager
d6abbc4 -
Feature
4:11 AM
Add theme manager support to news and UGC charts pages
9b255f7 -
Feature
3:56 AM
Add video thumbnail support for news posts
bf78851 -
Feature
3:14 AM
Add UGC Charts feature for games and maps
Details
- Implement /ugc/charts/game and /ugc/charts/map endpoints
- Fetch live data from Facepunch Services API with 30-minute cache
- Display 5 chart sections: Popular Today, Popular This Month, Trending Now, Most Favorited, Newest Releases
- Integrate with CacheManager for centralized SQLite-based caching
- Add responsive design with glassmorphism effects and smooth animations
- Include Charts navigation link in header
- Support stale cache fallback on API failures
e260da8
Generated from the project's commit history whenever the site is deployed. Times are server time.