ScrimLabs is the competitive heartbeat of The Finals community. We're not your average Discord server with a bot slapped on top. We're a full-stack competitive ecosystem with purpose-built tools, real-time statistics, automated matchmaking, and a community of players who take their craft seriously.
We asked ourselves: What if scrims weren't chaotic? What if stats actually mattered? What if the tools matched the ambition of the players?
So we built it ourselves.
|
The Brain of the Operation Our custom Discord bot that handles everything:
Built with discord.js v14, SQLite, and an unhealthy obsession with clean UX. |
The Stats Don't Lie A full React-powered statistics platform:
React frontend, Express.js backend, unified database with the bot. |
Three players who got tired of waiting for someone else to fix competitive gaming.
|
The Creator "Sleep is for people who aren't shipping features." The driving force behind ScrimLabs. While others talked about what competitive gaming needed, Probler sat down and built it. Many development sessions deep, mass debugging at ungodly hours, fighting git merges, and turning wild ideas into working code. Every line of the bot, every system, every "just one more fix" - that's Probler. Role: Founder, Lead Developer, The Reason This Exists |
The Engineer "If it's not automated, it's not finished." The other half of the dev team. When Probler builds the foundation, Enigma stress-tests it until it breaksโthen helps rebuild it stronger. Late-night debugging sessions, feature brainstorms, and code reviews that actually make things better. ScrimLabs isn't a solo project; it's a partnership, and Enigma is the teammate everyone wishes they had. Role: Founder, Teach Lead, Developer, The Other 2am Coder |
The Spark "What if we actually did this?" Planted the initial seed that became ScrimLabs. Sometimes all it takes is one person to say "this should exist" to set everything in motion. Role: Founder, Visionaire, Early Support |
| Layer | Technology |
|---|---|
| ๐ค Bot Runtime | Node.js, discord.js v14 |
| ๐ Web Frontend | React, Tailwind CSS |
| โ๏ธ Web Backend | Express.js |
| ๐๏ธ Database | SQLite (better-sqlite3) |
| ๐จ Graphics | Canvas (Node) |
| โ๏ธ Hosting | DigitalOcean |
| ๐ Process Manager | PM2 |
| ๐ External APIs | The Finals Leaderboard API, OGClub |
ScrimLabs/
โโโ ๐ค ScrimBotCode/ # The Discord bot
โ โโโ commands/ # Slash commands
โ โโโ utils/ # Core systems (autoQueue, leaderboard, etc.)
โ โโโ database.js # SQLite wrapper
โ โโโ index.js # Entry point
โ
โโโ ๐ ScrimLabsWeb/ # The statistics website
โ โโโ client/ # React frontend
โ โโโ server/ # Express API
โ โโโ shared/ # Shared utilities
โ
โโโ ๐ .github/ # You are here
โโโ README.md # This epic document
| Principle | What It Means |
|---|---|
| ๐ฎ Players First | Every feature starts with "how does this help the player?" |
| โก Speed Matters | Queue times measured in seconds, not minutes |
| ๐ Data-Driven | If it happened, we tracked it |
| ๐ง Always Improving | Shipped is not finished. Shipped is the beginning |
| ๐ค Community-Built | Your feedback shapes our roadmap |
ScrimLabs started as a simple question: "Why is organizing scrims so painful?"
What began as a side project has evolved into a full competitive platform. But we're not done. Not even close.
Coming Soon:
- ๐ Tournament System with brackets and seeding
- ๐บ Stream Integration for casters
- ๐๏ธ Achievement System
- ๐ Multi-region Support
- ๐ฑ Mobile App (eventuallyโข)
Whether you're a Ruby-ranked demon or just starting your climb, there's a place for you in ScrimLabs.
Built with ๐ by the ScrimLabs team
ยฉ 2025 ScrimLabs โ All rights reserved
"GG go next" - Every player, after every match