This commit is contained in:
2026-03-15 12:22:42 +01:00
parent cd99275933
commit 311ba5e7f3
558 changed files with 55182 additions and 22981 deletions

View File

@@ -1,3 +1,90 @@
Temps de Projet Femboy-France-Bot (Ancien nom): [![wakatime](https://wakatime.com/badge/user/82e1aed9-c281-4a7b-9909-1dfb8022b027/project/30e19ddc-4559-496e-8632-68eebdbc5450.svg)](https://wakatime.com/badge/user/82e1aed9-c281-4a7b-9909-1dfb8022b027/project/30e19ddc-4559-496e-8632-68eebdbc5450)
# 🥐 Femboy Croissant Bot
Temps de Projet France-Femboy-Bot (Actuel): [![wakatime](https://wakatime.com/badge/user/82e1aed9-c281-4a7b-9909-1dfb8022b027/project/e30f3a7a-bda3-4fcf-9580-e57b6463ccab.svg)](https://wakatime.com/badge/user/82e1aed9-c281-4a7b-9909-1dfb8022b027/project/e30f3a7a-bda3-4fcf-9580-e57b6463ccab)
Un bot Discord complet et moderne pour la gestion de communauté, incluant modération, système d'XP, tickets avec transcription web, et plus encore.
## 🌟 Fonctionnalités
### 🛡️ Modération
- **Sanctions complètes :** Ban, Kick, Mute (Timeout), Warn.
- **Gestion des sanctions :** `unban`, `unmute`, `untimeout`, `changesanction`, `revokesanction`.
- **Logs détaillés :** Toutes les actions sont enregistrées en base de données et dans un salon de logs.
- **Casier judiciaire :** Visualisez l'historique des sanctions d'un membre avec `/casier`.
- **Auto-Unban/Unmute :** Gestion automatique des expirations de sanctions.
### 🎫 Système de Tickets
- **Types multiples :** Support, Plainte, Candidature, etc.
- **Transcriptions Web :** Génération automatique de pages HTML pour les archives de tickets.
- **Dashboard Web :** Interface pour visualiser et gérer les transcripts (avec authentification Discord).
- **Candidatures :** Formulaire intégré avec questions personnalisées.
### 📈 Système d'XP
- **Progression :** Gain d'XP par message et en vocal.
- **Niveaux :** Annonces de level-up personnalisées.
- **Classement :** Leaderboard global avec `/leaderboard`.
- **Exclusion :** Possibilité d'exclure certains salons du gain d'XP.
- **Bumps :** Récompenses d'XP pour les bumps (Disboard) et rappels automatiques.
### 🛠️ Utilitaires
- **Info :** `/userinfo`, `/serverinfo`, `/profil`.
- **Profils personnalisables :** Signature, anniversaire, badges (détection automatique Nitro/Boost).
- **Dev :** Commandes de maintenance (`/reload`, `/infra`).
## 🚀 Installation
### Prérequis
- Node.js v16.9.0 ou supérieur.
- Une base de données MySQL/MariaDB.
- Un bot Discord créé sur le [Developer Portal](https://discord.com/developers/applications).
### Configuration
1. Clonez le dépôt.
2. Installez les dépendances :
```bash
npm install
```
3. Configurez le fichier `.env` (voir `.env.example` ou ci-dessous) :
```env
TOKEN=votre_token_bot
CLIENT_ID=votre_client_id
GUILD_ID=id_serveur_principal
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=votre_mot_de_passe
DB_NAME=bot
DISCORD_CLIENT_SECRET=votre_secret_oauth
DISCORD_CALLBACK_URL=http://localhost:3000/auth/discord/callback
TRANSCRIPT_PORT=3000
MODERATOR_IDS=id1,id2
```
### Démarrage
1. Déployez les commandes Slash :
```bash
npm run deploy
```
2. Lancez le bot :
```bash
npm start
```
3. (Optionnel) Lancez le serveur de transcripts :
```bash
npm run server
```
## 📂 Structure du Projet
- `/commands` : Commandes Slash organisées par catégorie.
- `/events` : Gestionnaires d'événements Discord (message, interaction, vocal...).
- `/functions` : Logique métier (DB, XP, Modération).
- `/server` : Serveur web Express pour les transcripts.
- `/utils` : Constantes et fonctions utilitaires.
## 🔒 Sécurité
- Les tokens et mots de passe ne doivent **jamais** être partagés.
- Le fichier `.env` est ignoré par Git.
- Le serveur web utilise l'authentification OAuth2 Discord pour protéger les transcripts.
---
*Développé avec ❤️ par Syxpi*