Guardian is a comprehensive Discord bot built with Discord.js v14, designed to provide powerful moderation tools, fun interactions, and essential server management features. With an extensive command system and customizable settings, Guardian helps keep your Discord server safe, organized, and entertaining.
Version: 1.7.0
License: Apache 2.0
Developer: Guardians-Stuff
Guardian offers a wide range of features including:
-
π¨ Moderation Tools - Ban, kick, warn, timeout, message management, and comprehensive logging
-
βοΈ Administrator Features - Anti-raid protection, verification systems, auto-roles, ticket system, and more
-
π Information Commands - Server, user, and bot information utilities
-
π§ Utility Features - Reminders, AFK status, calculator, and various helpful tools
-
π Backup System - Create and manage server backups
-
π Sharding Support - Automatic sharding for large-scale deployments
-
π Advanced Logging - Comprehensive error handling and activity logging
-
π Real-time Analytics - Bot performance monitoring with Statcord integration
-
Bun - High-performance JavaScript runtime
-
Discord.js v14.7.1 - Discord API wrapper
-
MongoDB + Mongoose 6.8.1 - Database and ODM
-
Moment.js - Date/time manipulation
-
Winston - Advanced logging system
-
tsx - TypeScript execution
Before installing Guardian, make sure you have:
-
Bun (latest version recommended)
-
MongoDB database (local or cloud-hosted)
-
Discord Bot Token from Discord Developer Portal
-
Git (for cloning the repository)
git clone https://github.com/Guardians-Stuff/Guardian.git
cd Guardian
bun install
This will install all required packages listed in package.json.
Create a .env file in the root directory with the following variables:
DISCORD_TOKEN=your_discord_bot_token_here
MONGODB_URL=your_mongodb_connection_string_here
LIVE=false
STATCORD_API_KEY=your_statcord_api_key_here
Environment Variables Explained:
-
DISCORD_TOKEN- Your Discord bot token from the Developer Portal-
Get it from: https://discord.com/developers/applications
-
Select your application β Bot β Reset Token/Copy Token
-
-
MONGODB_URL- Your MongoDB connection string-
Local:
mongodb://localhost:27017/guardian -
MongoDB Atlas:
mongodb+srv://username:password@cluster.mongodb.net/guardian -
Make sure MongoDB is running if using local instance
-
-
LIVE- Set totruefor production with HTTPS,falsefor development-
When
true, requires SSL certificates indata/server/directory -
When
false, uses HTTP on port 2053
-
-
STATCORD_API_KEY- Your Statcord API key for bot statistics (optional)-
Get it from: https://statcord.com/
-
Used for tracking bot performance and usage analytics
-
Leave empty if not using Statcord
-
If running in production mode (LIVE=true), place your SSL certificates:
data/server/
βββ privkey.pem # Private key
βββ fullchain.pem # Certificate chain
For development with auto-reload:
bun run dev
For production:
bun start
For automatic sharding:
bun start
For development without sharding:
bun run start-no-shard
-
Local MongoDB:
# Install MongoDB on your system bun install mongoose -
MongoDB Atlas (Cloud):
-
Create account at https://www.mongodb.com/cloud/atlas
-
Create a free cluster
-
Get connection string
-
Add your IP to whitelist
-
After the bot is running, use the /setup command in your Discord server to:
-
Check bot permissions
-
Verify bot role position
-
Configure logging channels
-
Initialize basic settings
-
bun start- Start the bot in production mode (with sharding) -
bun run dev- Start the bot in development mode (with sharding and auto-reload) -
bun run start-no-shard- Start without sharding -
bun run dev-no-shard- Development without sharding -
bun run format- Format code using Prettier -
bun run check- Check code formatting
The project uses Prettier for code formatting. To format your code:
bun run format
The bot automatically handles sharding for optimal performance:
-
Status Display: Shows current shard in bot status (e.g., "Shard 1/3")
-
Logging: All logs include shard information for easy debugging
-
Error Handling: Shard-specific error reporting to dedicated channels
-
Performance: Automatic load balancing across shards
Guardian includes comprehensive logging:
-
Console Logs: Color-coded logs with shard information
-
Error Logs: Automatic error reporting to Discord channels
-
Activity Logs: Secret word discoveries and important events
-
Performance Logs: Bot statistics and health monitoring
-
INSTALL.md - Docker installation guide
-
CONTRIBUTING.md - Contributing guidelines
-
CODE_OF_CONDUCT.md - Code of conduct
We welcome contributions! Please read CONTRIBUTING.md for details on:
-
Code style guidelines
-
How to submit pull requests
-
Reporting bugs
-
Proposing features
This project is licensed under the Apache 2.0 License - see the LICENSE file for details.
-
GitHub Repository: Guardians-Stuff/Guardian
-
Invite Bot: Invite Guardian to your server
-
Developer: Brennan / Guardians-Stuff
-
Community: Thanks to all users and contributors who supported Guardian
β Star this repo if you found it helpful! β
Made with β€οΈ by the Guardian team