
Un framework Discord.js moderne et puissant pour créer des bots Discord professionnels
Documentation • Installation • Utilisation • Fonctionnalités
Otterbots est un framework complet développé par L'Antre des Loutres pour simplifier la création de bots Discord professionnels. Il intègre des fonctionnalités avancées comme la gestion automatique des salons, un système de logging sophistiqué, une API centralisée, et des modules de sécurité.
.envCloner le projet
git clone https://github.com/L-Antre-des-Loutres/Otterbots.git
cd Otterbots
Installer les dépendances
npm install
Configurer l'environnement
Copiez le fichier d'exemple et remplissez vos informations :
cp .env.example .env
Éditez .env avec vos valeurs :
# Environnement
NODE_ENV=dev
BOT_LANGUAGE=FR
# Discord
BOT_TOKEN=votre_token_discord
DISCORD_GUILD_ID=id_de_votre_serveur
DISCORD_CLIENT_ID=id_de_votre_application
BOT_NAME=MonBot
# Webhooks (optionnel)
ENABLE_DISCORD_LOGS=true
GLOBAL_WEBHOOK_URL=https://discord.com/api/webhooks/...
ERROR_WEBHOOK_URL=https://discord.com/api/webhooks/...
Compiler le projet
npm run build
Lancer le bot
En développement :
npm run dev
En production :
npm start
Otterbots/
├── src/
│ ├── app/ # Configuration de votre bot
│ │ ├── config/ # Fichiers de configuration
│ │ │ ├── salon.ts # Configuration des salons Discord
│ │ │ ├── task.ts # Tâches planifiées (cron)
│ │ │ └── otterguardConfig.ts # Configuration sécurité
│ │ ├── commands/ # Vos commandes Discord
│ │ ├── events/ # Vos gestionnaires d'événements
│ │ └── index.ts # Point d'entrée
│ └── otterbots/ # Framework (ne pas modifier)
│ ├── utils/ # Utilitaires du framework
│ └── docs/ # Documentation détaillée
├── .env # Variables d'environnement
└── package.json
Créez un fichier dans src/app/commands/ :
import { CommandInteraction, SlashCommandBuilder } from 'discord.js';
export const data = new SlashCommandBuilder()
.setName('hello')
.setDescription('Dire bonjour');
export async function execute(interaction: CommandInteraction) {
await interaction.reply('Bonjour ! 🦦');
}
Éditez src/app/config/salon.ts :
export const salonCategory = [
{ id: 1, name: "Logs", role_id: "ROLE_ID" }
];
export const botSalon = [
{
alias: "logs-bot",
name: "🤖-logs",
category: 1,
webhook: true
}
];
Éditez src/app/config/task.ts :
export const tasks = [
{
name: "Sauvegarde quotidienne",
time: "0 0 * * *", // Tous les jours à minuit
task: async () => {
console.log("Sauvegarde en cours...");
}
}
];
import { otterlogs } from './otterbots/utils/otterlogs';
otterlogs.success("Bot démarré avec succès !");
otterlogs.log("Chargement de 10 commandes...");
otterlogs.warn("Cache expiré");
otterlogs.error("Erreur de connexion à la DB");
Système de logging avancé avec :
Module de sécurité pour protéger votre serveur :
Gestionnaire d'API centralisé :
Système de cache persistant :
node-cronToute la documentation détaillée se trouve dans src/otterbots/docs/ :
| Commande | Description |
|---|---|
npm run dev |
Lint + Build + Lancer en mode développement |
npm run build |
Compiler TypeScript vers JavaScript |
npm run lint |
Vérifier le code avec ESLint |
npm start |
Lancer le bot compilé (production) |
Les contributions sont les bienvenues ! N'hésitez pas à :
git checkout -b feature/AmazingFeature)git commit -m 'Add AmazingFeature')git push origin feature/AmazingFeature)Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
Développé avec ❤️ par L'Antre des Loutres
Fait avec 🦦 par L'Antre des Loutres