- Node.js 18+ et npm
- MongoDB (local ou cloud)
- Un bot Discord créé sur le Discord Developer Portal
cd discord-moderation-bot
npm install
cd panel
npm install
cd ..Copiez le fichier .env.example vers .env et remplissez les valeurs :
cp .env.example .envÉditez .env :
# MongoDB
MONGODB_URI=mongodb://localhost:27017/discord-moderation
# API
PORT=3000
JWT_SECRET=changez_moi_avec_une_longue_chaine_aleatoire
BOT_API_KEY=changez_moi_aussi_cle_securisee
# Bot Discord
DISCORD_BOT_TOKEN=votre_token_bot
DISCORD_CLIENT_ID=votre_client_id
DISCORD_CLIENT_SECRET=votre_client_secret
# Master User (premier admin)
MASTER_EMAIL=admin@example.com
MASTER_PASSWORD=MotDePasseSecurise123
MASTER_DISCORD_ID=votre_discord_idnpm run seedCela créera le premier compte administrateur Master.
node src/scripts/deploy-commands.jsOption 1 : Tout démarrer ensemble
npm startOption 2 : Démarrer séparément (recommandé en développement)
Terminal 1 - API :
npm run api:devTerminal 2 - Bot :
npm run bot:devTerminal 3 - Panel Vue :
cd panel
npm run serve- Panel Web : http://localhost:8080
- API : http://localhost:3000
Connectez-vous au panel avec l'email et le mot de passe Master configurés dans .env.
- Allez sur le Discord Developer Portal
- Créez une application ou sélectionnez-en une existante
- Dans l'onglet "Bot" :
- Copiez le token →
DISCORD_BOT_TOKEN - Activez les intents :
SERVER MEMBERS INTENT,MESSAGE CONTENT INTENT(si nécessaire)
- Copiez le token →
- Dans l'onglet "General Information" :
- Copiez "Application ID" →
DISCORD_CLIENT_ID
- Copiez "Application ID" →
- Dans l'onglet "OAuth2" :
- Copiez "Client Secret" →
DISCORD_CLIENT_SECRET - Ajoutez l'URL de redirection :
http://localhost:8080/auth/callback
- Copiez "Client Secret" →
URL d'invitation (remplacez YOUR_CLIENT_ID) :
https://discord.com/api/oauth2/authorize?client_id=YOUR_CLIENT_ID&permissions=1099780063414&scope=bot%20applications.commands
Permissions requises :
- Kick Members
- Ban Members
- Timeout Members
- Manage Messages
- View Channels
- Send Messages
- Embed Links
- Connectez-vous au panel web avec le compte Master
- Allez dans "Administration" → "Serveurs"
- Sélectionnez votre serveur Discord
- Configurez :
- Les rôles Discord autorisés à modérer
- Les templates de sanctions
- Les règles d'escalade
- Assignez des rôles (GUILD_ADMIN / GUILD_MODERATOR) aux utilisateurs
/warn <user> <type> <raison>- Avertir un utilisateur/mute <user> <type> <raison> [durée]- Timeout un utilisateur/kick <user> <type> <raison>- Expulser un utilisateur/ban <user> <type> <raison>- Bannir un utilisateur/history <user>- Voir l'historique des sanctions
Pour toute question ou problème, consultez la documentation complète dans le README.md principal.