Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/VasquezRivero92/Discord_Faceit/llms.txt

Use this file to discover all available pages before exploring further.

Discord Faceit Hub Bot bridges your Discord community with the Faceit platform. When a CS2 Hub match starts, the bot announces it in your matches channel, moves players to private team voice channels, and syncs their Faceit level roles — all automatically via webhooks. For custom scrimmages, the built-in Mixton lobby lets captains draft teams through a live web panel, with ELO-balanced tier pools and real-time WebSocket updates.

Introduction

Learn what the bot does, how its components fit together, and what you need before deploying.

Quickstart

Deploy the bot, configure environment variables, and register slash commands in under 10 minutes.

Configuration

Full reference for every environment variable, channel ID, and per-guild Firestore setting.

Faceit Webhooks

Connect your Faceit Hub to the bot’s webhook endpoint and handle match lifecycle events.

What the bot does

Account Linking

Players run /verificar_fc to bind their Discord identity to a Faceit profile. ELO-based roles are assigned instantly.

Match Announcements

Hub webhooks trigger rich embeds for every match state — configuring, started, finished, and cancelled.

Role Management

Faceit Level 1–10 Discord roles and Club special roles (EXTREME, PREMIUM, PLUS) are created and synced automatically.

Voice Channels

Private per-team voice rooms are created on match start, players are moved in, and channels are deleted when the match ends.

Mixton Lobbies

Captains draft teams through a real-time web panel with ELO-tiered player pools (S/A/B/C) and combinatorial ELO balancing.

Admin Panel

A React web dashboard for user management, feature flag control, leaderboard, webhook simulation, and system logs.

Get up and running

1

Create your Discord application

Go to discord.com/developers/applications, create a new application, enable the Bot, and copy your DISCORD_TOKEN and DISCORD_CLIENT_ID.
2

Set up Firebase and Faceit API

Create a Firebase project, download your service account JSON, and generate a Faceit API key from the Faceit Developers portal.
3

Configure environment variables

Copy .env.example to .env and fill in all required values — Discord credentials, Faceit keys, Firebase path, and channel IDs. See the Configuration reference for every variable.
4

Deploy and register commands

Run node index.js. On first startup the bot registers all slash commands globally and initializes the live match panel. Point your Faceit Hub webhook to https://your-domain/webhook/faceit.
The bot requires Node.js 18+ and a Firestore database. All state — linked users, active matches, settings, and logs — is stored in Firestore collections. No SQL database is needed.

Build docs developers (and LLMs) love