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
508 changes Clear filters
April 2026
5
-
Fix
9:11 AM
Fix garbled bullet glyph in profiles CSS
Details
Replace the corrupted bullet character in .inactive-placeholder-info li::before from '•' to '>>' to avoid encoding issues and ensure a visible list marker across environments. Visual positioning and color are unchanged.
592c27a -
Feature
8:13 AM
Add dark-mode support and theme fixes
Details
Remove obsolete footer links and enhance theme handling: deleted release-notes and changelog items from backend/includes/footer.php. Cleaned up api-doc.css (BOM/selector/spacing fixes), added dark-mode styles for Swagger UI, and normalized media query spacing. In frontend/js/theme-manager.js introduce DARK_THEMES, apply/remove a generic 'dark-mode' class when known dark themes are loaded or switched, and ensure body/ document classes are updated accordingly so external components (e.g. Swagger UI) follow the selected dark theme.
87e33ef -
Feature
6:45 AM
Add ESLint, Stylelint and PHP-CS-Fixer configs
Details
Add linting/formatting setup for JS, CSS and PHP: new eslint.config.js with frontend JS rules (browser/node/jquery globals, module + latest ECMAScript, 4-space indent, single quotes, semicolons, warn on unused vars, console allowed), .eslintignore and .stylelintignore to exclude node_modules/vendor/dist and minified files, and a php-cs-fixer.dist.php to run PSR12-based fixes across backend, frontend, includes and config (short array syntax, ordered imports, no unused imports, various spacing and PHPDoc rules). package.json was updated to include the linter devDependencies and package-lock.json regenerated.
6bbee00 -
Feature
6:06 AM
Add dynamic year to footer in locales
Details
Replace static copyright year with a dynamic placeholder (© 2025-{{year}} ...) across locale ui.json files and apply minor formatting fixes. Updates affect all localized footer copies (e.g. locales/*/ui.json) so the displayed year range is kept up-to-date.
2656943 -
Feature
3:29 AM
Add daily game and map chart history JSON
Details
Add daily chart history JSON snapshots for game and map data covering 2025-12-23 through 2026-04-01. Adds per-day files under data/chart_history/game/ and data/chart_history/map/ to record rankings, titles, orgs and favorites for historical charts and analysis.
23cd513
December 2025
3
-
Fix
2:03 PM
Fix 404 error for /stats endpoint by updating path regex to handle full backend path
a161185 -
Feature
1:54 PM
Use LoadingScreen image for #1 hero banner on Global Stats page
09306c5 -
Feature
1:32 PM
Add achievements and leaderboards sections to package pages
Details
- Add fetchPackageLeaderboardByStat() function to api_functions.php
- Create package-achievements-api.php and package-leaderboard-api.php endpoints
- Update LeaderboardController and AchievementController with structured JSON responses
- Register /package-achievements and /package-leaderboard routes in api.php
- Add achievements.php section with inline CSS for achievement cards grid
- Add leaderboards.php section with stat selector and player table
- Auto-hide sections when package has no achievements/leaderboards
- Add localization keys for new UI elements
- Include require_once for api_functions.php in api.php
d26f418
1
-
Feature
7:58 PM
Add output schemas for Facepunch API endpoints
Details
Introduces multiple JSON schema files under schema/output_schemas/ to describe responses from various Facepunch API endpoints, including package queries, news, reviews, versions, and utility endpoints. Also adds schemav1.py and renames schema.py to schemav2.py for versioning.
d6d636c
3
-
Fix
10:20 AM
Refactor settings page, fix persistence & API 500 errors
2f8a553 -
Feature
6:47 AM
Implement live global player count and replace stats cron with direct API fetch
72d84f3 -
Feature
4:15 AM
V4.0 overhaul - Spotlight Hero, Rank History, Filters
17fc416
7
-
Feature
5:30 PM
Implement Global Stats page with glassmorphism design and auto-discovery integration
6a5cf41 -
Feature
4:50 PM
Implement Auto-Discovery for sbox API Schema and Internal News Viewer with Premier Styles
4c737bd -
Fix
1:32 PM
Fix notification system: resolve schema mismatch, force cache refresh, and prevent duplicates
535de1c -
Feature
12:50 PM
Implement package comparison feature with premium UI
d04b6c7 -
Feature
11:16 AM
Add chart history for games and maps (Dec 3-6, 2025)
Details
Added new chart history JSON files for games and maps for December 3rd, 4th, 5th, and 6th, 2025. Updated existing map chart history for December 3rd, 2025 with latest data.
5edb6ef -
Fix
12:31 AM
Fix multiple log errors and API issues
Details
- Add Steam ID validation to prevent 400 errors from Steam API
- Added isValidSteamId64() and normalizeSteamId() helper functions
- Updated getSteamSboxPlaytime(), checkSteamSboxOwnership(), and getSteamFriendsList()
- Invalid Steam IDs are now logged and rejected early
- Fix cache decompression failures
- Added missing base64_decode step before gzdecode in cache_manager.php
- Matches encoding process in set() method
- Suppress non-critical theme directory warning
- Commented out error_log in generate-critical-css.php
- Directory exists, warning was from transient path resolution issue
- Fix settings API returning HTML instead of JSON
- Updated fetch URLs from /api/settings to /backend/api/settings.php
- Resolves 'Server returned HTML instead of JSON' error on settings page
be6504b -
Performance
12:22 AM
Improve admin UI and reputation sync logic
Details
Refactored admin panel pages for cache and reputation management with improved HTML structure, styling, and code formatting. Enhanced reputation sync to use the higher value between Steam and s&box API playtime. Updated API endpoints in admin actions and improved code consistency across admin scripts.
bc249b8
1
-
Performance
2:11 PM
Enhance .htaccess with compression, caching, and routing
Details
Added Brotli and improved gzip compression, static asset caching headers, and security headers. Implemented advanced routing for API, static files, and front controller pattern. Improved handling of static files, preflight requests, and direct access to admin/auth PHP files.
9476102
1
-
Fix
4:28 AM
Service worker being overly agressive
def8161
2
-
Fix
10:01 AM
Fix typo in user-profile-redesign.js
c6ab6bd -
Fix
9:58 AM
Fix duplicate constant warnings, add retry logic for connection resets, improve OpenID validation
66e6549
Generated from the project's commit history whenever the site is deployed. Times are server time.