A modern, feature-rich leaderboard system for Rust game servers
Built specifically for Pterodactyl Panel deployment with full theme customization, multi-server support, and real-time statistics tracking.
📚 View Full Documentation in Wiki →
| 🚀 Installation | ⚙️ Configuration | 🖥️ Console Commands | 🔧 Rust Plugin | 🛠️ Troubleshooting |
|---|
- Node.js Leaderboard Application - Complete web interface with admin panel
- Rust Oxide Plugin (
JSExtendedStats.cs) - Tracks 40+ player stats and sends to API - Database Schema - Pre-configured MySQL tables (
ruststats) - Console Management Tools - Built-in commands for server administration
- First-Time Setup Wizard - Interactive admin credential creation
- Comprehensive Player Statistics - Track kills, deaths, K/D ratio, headshots, accuracy, gathering, raiding, explosives, resources, animals, NPCs, and much more
- Multi-Server Support - Manage and track stats across multiple Rust servers from one dashboard
- Real-Time Updates - REST API integration with automatic stat synchronization
- Pterodactyl Native - Built specifically for Pterodactyl Panel with console command support
- Dashboard - View top players and server statistics at a glance
- Server Management - Add, remove, and monitor multiple servers with heartbeat tracking
- Statistics Wiper - Wipe stats per-server or globally via console or web interface
- Full Theme Customization - 29 customizable color options with export/import functionality
- Custom Branding - Upload logos, favicons, and background images
- Secure Authentication - Bcrypt password hashing with interactive setup wizard
help # Show all available commands
setup-admin # Reconfigure admin username and password
change-admin-password # Change admin password interactively
list-servers # List all registered Rust servers
wipe <serverid> # Wipe stats for a specific server
hash-password <password> # Generate bcrypt password hash
stop # Stop the server gracefully
Complete admin panel featuring dashboard, theme customization, branding settings, and server management
Interactive leaderboard with detailed player statistics and profile views
- Pterodactyl Panel with Node.js egg (v18.0.0+)
- MySQL 5.7+ or MariaDB 10.3+
- Rust server with Oxide/uMod installed
- Upload files to Pterodactyl Node.js server
- Create MySQL database named
ruststats - Import
database/schema.sql - Configure
.envfile (copy from.env.example) - Start server - first-time wizard will prompt for admin credentials
- Access admin panel at
http://your-ip:3000/admin/login - Install Rust plugin and configure with API URL and secret key
See Installation Guide for detailed steps.
Access Admin > Theme to customize 29 color options:
- Background Gradients - Main page background colors
- Card Colors - Background and border colors for cards
- Text Colors - Primary, secondary, and muted text
- Navigation - Navbar and sidebar backgrounds
- Stat Badges - Kills, Deaths, K/D ratio gradient colors
- Tables - Header background and row hover colors
- Tabs - Active, inactive, and hover colors
- Buttons - Primary gradient colors
- Player Cards - Profile card gradient colors
- Status Colors - Success, danger, warning, info indicators
Export/Import - Share themes between installations or backup your customizations
- Bcrypt Password Hashing - Admin passwords hashed with bcrypt (12 rounds)
- Session Management - Secure session handling with express-session
- Rate Limiting - Configurable rate limiting on login and API endpoints
- API Authentication - Secret key validation for all stat updates
- CORS Protection - Configurable allowed origins
- SQL Injection Protection - Parameterized queries with mysql2
- XSS Protection - Input validation and sanitization
- Backend: Node.js 18+, Express.js
- Database: MySQL 5.7+ / MariaDB 10.3+
- Frontend: EJS templating, Bootstrap 5, Socket.IO
- Security: bcrypt, express-session, express-rate-limit
- Data Tables: DataTables for leaderboard display
- Real-time: Socket.IO for WebSocket support
Powered by Emma-Tech
Built for Pterodactyl Panel | Node.js, Express & MySQL