Skip to content
/ veera Public

Un bot Discord complet et modulaire conçu pour gérer un serveur Minecraft avec modération, système de tickets, création de salons vocaux dynamiques et bien plus encore.

License

Notifications You must be signed in to change notification settings

qrlmza/veera

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 Veera - Bot Discord de Gestion


Un bot Discord complet et modulaire conçu pour gérer un serveur Minecraft avec modération, système de tickets, création de salons vocaux dynamiques et bien plus encore.

🚀 Utilisation Rapide

# Cloner et installer
git clone <repo>
cd Veera
npm install

# Configurer
cp .env.example .env
# Éditer .env avec vos données

# Démarrer
npm start

⚡ Points Forts

┌─────────────────────────────────────────────┐
│            🌟 VEERA HIGHLIGHTS 🌟                                                                │
├─────────────────────────────────────────────┤
│                                                                                                                                │
│  ✨ 13+ Commandes Slash                                                                                  │
│  🎯 Modération Complète & Automatisée                                                           │
│  🎤 Salons Vocaux Dynamiques                                                                          │
│  🎫 Système de Tickets Intégré                                                                            │
│  🗄️ Base de Données MySQL Persistante                                                           │
│  ⚡ Architecture Modulaire & Extensible                                                            │
│  🔐 Gestion des Permissions Avancée                                                                 │
│  📊 Logs & Historique Complet                                                                          │
│                                                                                                                               │
└─────────────────────────────────────────────┘

📖 Documentation

📋 Table des matières

✨ Fonctionnalités

Catégorie Fonctionnalités
🛡️ Modération Ban/Unban, Kick, Timeout, Avertissements, Blacklist, Lock/Unlock
🎤 Salons Vocaux Création dynamique, Permissions auto, Suppression auto
🎫 Système de Tickets Création, Gestion, Archivage, Support intégré
🔧 Utilitaires Help interactif, Ping, Clear messages
💬 Membre Bienvenue personnalisée, Archivage des événements
🗄️ Base de Données MySQL persistant, Historique des actions
🤖 Automation Logs automatiques, Actions programmées

🛡️ Modération

  • Ban/Unban : Bannir et débannir avec raison enregistrée
  • Kick : Expulsion instantanée
  • Timeout : Mute automatique temporaire
  • Warns : Système d'avertissements avec historique BD
  • Blacklist : Liste noire personnalisée
  • Lock/Unlock : Verrouillage des canaux

🎤 Gestion Vocale

  • Salons Dynamiques : Création auto à partir d'un canal spécifique
  • Permissions Auto : Gestion intelligente des droits d'accès
  • Suppression Auto : Nettoyage automatique des salons vides

🎫 Système de Tickets

  • Création : Interface simple et rapide
  • Gestion : Interface de gestion complète
  • Archivage : Sauvegarde des tickets fermés

🔧 Utilitaires

  • Help Interactif : Menu de sélection des catégories
  • Ping : Latence du bot en temps réel
  • Clear : Suppression en masse de messages

💬 Fonctionnalités Avancées

  • Bienvenue Personnalisée : Messages de bienvenue pour les nouveaux membres
  • Intégration Mammoth AI : Support de l'API Mammoth AI
  • Base de Données MySQL : Stockage persistant des données

📦 Prérequis

  • Node.js ≥ 16.0.0
  • npm ou yarn
  • Discord Bot Token
  • MySQL (optionnel, pour la persistance des données)
  • Compte Discord Developer avec application créée

🚀 Installation

1. Cloner le projet

git clone https://github.com/qrlmza/veera
cd Veera

2. Installer les dépendances

npm install

3. Configurer les variables d'environnement

Créer un fichier .env à la racine du projet en copiant .env.example :

cp .env.example .env

Remplir les variables nécessaires (voir section Configuration)

4. Démarrer le bot

npm start

⚙️ Configuration

Variables d'Environnement

Créer un fichier .env avec les variables suivantes :

# Discord
APP_TOKEN=votre_token_bot               # Token du bot Discord
APP_ID=votre_app_id                     # ID de l'application Discord
SERVER_ID=votre_server_id               # ID du serveur Discord

# Canaux
WELCOME_CHANNEL_ID=id_du_canal          # ID du canal de bienvenue
CRVOICE_CHANNEL=id_du_canal_creation    # ID du canal de création vocale

# API Externe
MAMMOUTH_API_TOKEN=votre_api_key        # Clé API Mammoth (optionnel)

# Base de Données MySQL
DB_HOST=localhost                       # Adresse du serveur MySQL
DB_USER=root                            # Nom d'utilisateur MySQL
DB_PASS=votre_mot_passe                 # Mot de passe MySQL
DB_NAME=nom_de_la_base                  # Nom de la base de données
DB_PORT=3306                            # Port MySQL (défaut: 3306)

📁 Structure du Projet

Veera/
├── main.js                      # Point d'entrée du bot
├── package.json                 # Dépendances du projet
├── .env.example                 # Modèle de configuration
│
├── Commands/                    # Commandes slash
│   ├── Admin/                   # Commandes de modération
│   │   ├── ban.js              # Bannir un membre
│   │   ├── unban.js            # Débannir un membre
│   │   ├── kick.js             # Expulser un membre
│   │   ├── timeout.js          # Mettre en mute
│   │   ├── warn.js             # Avertir un membre
│   │   ├── warns.js            # Voir les avertissements
│   │   ├── blacklist.js        # Gérer la blacklist
│   │   ├── clear.js            # Supprimer des messages
│   │   ├── lock.js             # Verrouiller un canal
│   │   ├── unlock.js           # Déverrouiller un canal
│   │   └── setup-ticket.js      # Configurer les tickets
│   │
│   ├── Utility/                 # Commandes utilitaires
│   │   ├── help.js             # Aide et liste des commandes
│   │   └── ping.js             # Vérifier la latence
│   │
│   └── Fun/                     # Commandes amusantes (à développer)
│
├── Events/                      # Événements Discord
│   ├── ready.js                # Bot prêt et connecté
│   ├── customVoice.js          # Création de salons vocaux
│   ├── guildMemberAdd.js       # Bienvenue des nouveaux membres
│   ├── interactionCreate.js    # Gestion des interactions
│   └── messageCreate.js        # Gestion des messages
│
├── Handlers/                    # Gestionnaires
│   ├── commands.js             # Chargement des commandes
│   └── ticketSystem.js         # Système de tickets
│
├── Utils/                       # Utilitaires
│   ├── blacklistManager.js     # Gestion de la blacklist
│   ├── warnManager.js          # Gestion des avertissements
│   └── clearCommandsAPI.js     # API de suppression de commandes
│
├── Config/                      # Configuration
│   └── tickets.js              # Configuration des tickets
│
└── Data/                        # Données du bot (générées)
    └── ...

🎮 Commandes

🛡️ Modération (/)

Commande Description Permission
/ban [@user] [raison] Bannir un membre Administrator
/unban [user_id] [raison] Débannir un membre Administrator
/kick [@user] [raison] Expulser un membre Kick Members
/timeout [@user] [durée] [raison] Mettre en mute Moderate Members
/warn [@user] [raison] Avertir un membre Moderate Members
/warns [@user] Voir les avertissements Moderate Members
/blacklist [action] [user_id] Gérer la blacklist Administrator
/clear [nombre] Supprimer des messages Manage Messages
/lock Verrouiller le canal Manage Channels
/unlock Déverrouiller le canal Manage Channels
/setup-ticket Configurer les tickets Administrator

🔧 Utilitaires

Commande Description
/help Affiche toutes les commandes disponibles
/ping Vérifie la latence du bot

💡 Systèmes Principaux

🎤 Système de Salons Vocaux Dynamiques

Le bot crée automatiquement des salons vocaux privés quand un utilisateur rejoint un canal spécifique.

Fonctionnement :

  1. L'utilisateur rejoint le canal déterminé par CRVOICE_CHANNEL
  2. Le bot crée automatiquement un nouveau salon : Salon de [username]
  3. Le salon est de type vocal avec:
    • Permissions de l'utilisateur : Connect, ManageChannels, MuteMembers, MoveMembers
    • Permissions du serveur : Connect uniquement
  4. Quand le dernier utilisateur quitte, le salon est automatiquement supprimé

🎫 Système de Tickets

Permet aux membres de créer des tickets pour contacter l'équipe de support.

Configuration : Voir Config/tickets.js

⚠️ Système d'Avertissements

Suivi automatique des avertissements des membres avec historique en base de données.

👋 Accueil Automatique

Message de bienvenue personnalisé quand un nouveau membre rejoint le serveur.

🔌 Dépendances

  • discord.js (v14.25.1) - Bibliothèque Discord.js
  • dotenv (v17.2.3) - Gestion des variables d'environnement
  • mysql2 (v3.15.3) - Client MySQL
  • colors (v1.4.0) - Coloration du terminal
  • fs & path - Modules Node.js natifs

📝 Exemple de Démarrage

$ npm start

📦 → Total: 13 commande(s) chargée(s)
🔄 → Déploiement des commandes slash en cours...
🚀 → Chargement des handlers...
📂 → Chargement des events...
✅ → Event chargé : voiceStateUpdate
✅ → Event chargé : guildMemberAdd
✅ → Event chargé : interactionCreate
✅ → Event chargé : messageCreate
✅ → Event chargé : clientReady
🪶 → 13 commande(s) slash déployée(s) sur le serveur
📡 → The application started with the Veera username

🐛 Dépannage

❌ Le bot ne démarre pas

  • ✅ Vérifiez que toutes les variables dans .env sont remplies
  • ✅ Assurez-vous que le token est valide et actif
  • ✅ Vérifiez les logs d'erreur dans la console
  • ✅ Vérifiez les permissions du dossier/fichiers

❌ Les commandes ne s'affichent pas

  • ✅ Attendez 2-5 minutes après le démarrage (déploiement des slash commands)
  • ✅ Vérifiez que l'ID du serveur est correct dans .env
  • ✅ Vérifiez que le bot a les permissions administrateur
  • ✅ Rafraîchissez Discord (Ctrl+R)

❌ Le système vocal ne fonctionne pas

  • ✅ Vérifiez que CRVOICE_CHANNEL pointe sur le bon canal
  • ✅ Assurez-vous que le bot a les permissions de gestion des canaux
  • ✅ Vérifiez que GuildVoiceStates est dans les intents

❌ Erreur "client is not defined"

  • ✅ Vérifiez que client est passé en paramètre
  • ✅ Assurez-vous que les événements sont structurés correctement

📖 Besoin d'aide ?

Consultez les logs détaillés avec :

npm start 2>&1 | tee bot.log

📞 Support

Vous avez des questions ou des suggestions ?

Discord Server Issues Email

🤝 Contribution

Les contributions sont bienvenues ! Pour contribuer :

  1. Fork le projet
  2. Créer une branche pour votre fonctionnalité (git checkout -b feature/MaFonctionnalite)
  3. Commit vos changements (git commit -m 'Ajoute une nouvelle fonctionnalité')
  4. Push vers la branche (git push origin feature/MaFonctionnalite)
  5. Ouvrir une Pull Request

� Statistiques du Projet

Métrique Valeur
📦 Commandes 13+ Slash Commands
🎫 Systèmes 4 majeurs
📁 Fichiers 20+ fichiers JS
📝 Lignes de Code 1000+
⏱️ Temps de Chargement < 2s
🗄️ BD Support MySQL 8.0+

📄 Licence

Ce projet est sous la licence ISC. Vous êtes libre de l'utiliser, le modifier et le distribuer.

En savoir plus sur la licence ISC


👨‍💻 Développé par

selunikGitHubDiscord

🚀 À propos

  • Donner une star aide le projet à grandir
  • 🔔 Activer les notifications pour les mises à jour
  • 🐛 Signalez les bugs avec une issue
  • 💡 Proposez des améliorations

📌 Infos du Projet

Info Détail
Version 1.0.0
Statut ✅ Actif & Maintenu
Dernière MAJ 17 février 2026
Node.js Min 16.0.0
Discord.js 14.25.1

Merci d'utiliser Veera! 🙏
Si le projet vous plaît, pensez à ⭐ Star le repo ! 😊


© 2026 Veera Bot | Tous droits réservés

About

Un bot Discord complet et modulaire conçu pour gérer un serveur Minecraft avec modération, système de tickets, création de salons vocaux dynamiques et bien plus encore.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published