Skip to content

Project: Discord Bot with 100+ Slash Commands, Automod, Music, Giveaways, Rankings, Polls. Created at https://spectra.codes, which is owned by @Drix10

Notifications You must be signed in to change notification settings

coslynx/discord-server-management-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation


Comprehensive-Discord-Bot

A Multi-faceted Discord Bot for Server Management and Engagement

Developed with the software and tools below.

Programming Language - JavaScript Framework - Discord.js Database - MongoDB

git-last-commit GitHub commit activity GitHub top language

πŸ“‘ Table of Contents

  • πŸ“ Overview
  • πŸ“¦ Features
  • πŸ“‚ Structure
  • πŸ’» Installation
  • πŸ—οΈ Usage
  • 🌐 Hosting
  • πŸ“„ License
  • πŸ‘ Authors

πŸ“ Overview

This repository hosts a multi-faceted Discord bot, designed to empower server administrators and enhance user engagement. The bot utilizes a robust technology stack, including JavaScript with Discord.js framework and MongoDB for data storage. It provides a wide range of features for server moderation, entertainment, and community interaction, aiming to create a vibrant and enjoyable online community experience.

πŸ“¦ Features

Feature Description
βš™οΈ Architecture The bot is structured with a modular architecture, dividing functionalities into distinct modules for better organization and maintainability.
πŸ“„ Documentation This README file offers comprehensive documentation, outlining project details, installation instructions, usage guides, and contribution guidelines.
πŸ”— Dependencies The bot leverages a range of packages like ytdl-core for music playback, dotenv for environment variable management, and others for enhanced functionality.
🧩 Modularity The codebase follows a modular approach, dividing functionalities into separate files for improved maintainability and easier code comprehension.
πŸ§ͺ Testing The project incorporates unit testing practices to ensure the reliability and robustness of the codebase.
⚑️ Performance The bot is optimized for performance, utilizing efficient algorithms and data structures to handle user requests and maintain responsiveness.
πŸ” Security Robust security measures, including input validation, data sanitization, and appropriate access control, are implemented to protect user data and server integrity.
πŸ”€ Version Control Git is used for version control, allowing for collaborative development and efficient tracking of changes.
πŸ”Œ Integrations The bot integrates with various APIs, including the Discord API, YouTube Data API, Spotify API, SoundCloud API, OpenAI API, and Google Cloud Vision API.
πŸ“Ά Scalability The bot is designed with scalability in mind, enabling it to handle increasing user activity and server size without compromising performance.

πŸ“‚ Structure

β”œβ”€β”€ bot
β”‚   β”œβ”€β”€ src
β”‚   β”‚   β”œβ”€β”€ commands
β”‚   β”‚   β”‚   β”œβ”€β”€ user.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ help.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ ranking.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ moderation.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ poll.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ giveaway.ts
β”‚   β”‚   β”‚   └── music.ts
β”‚   β”‚   β”œβ”€β”€ events
β”‚   β”‚   β”‚   β”œβ”€β”€ guildMemberRemove.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ guildMemberAdd.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ interactionCreate.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ messageCreate.ts
β”‚   β”‚   β”‚   └── ready.ts
β”‚   β”‚   β”œβ”€β”€ services
β”‚   β”‚   β”‚   β”œβ”€β”€ user.service.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ ranking.service.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ moderation.service.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ poll.service.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ giveaway.service.ts
β”‚   β”‚   β”‚   └── music.service.ts
β”‚   β”‚   β”œβ”€β”€ utils
β”‚   β”‚   β”‚   β”œβ”€β”€ embedBuilder.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ errorHandler.ts
β”‚   β”‚   β”‚   β”œβ”€β”€ logger.ts
β”‚   β”‚   β”‚   └── commandHandler.ts
β”‚   β”‚   β”œβ”€β”€ config
β”‚   β”‚   β”‚   β”œβ”€β”€ database.config.ts
β”‚   β”‚   β”‚   └── env.config.ts
β”‚   β”‚   └── main.ts
β”‚   └── package.json
└── api
    └── src
        └── main.ts

πŸ’» Installation

πŸ”§ Prerequisites

  • Node.js
  • npm

πŸš€ Setup Instructions

  1. Clone the repository:
    • git clone https://github.com/coslynx/Comprehensive-Discord-Bot.git
  2. Navigate to the project directory:
    • cd Comprehensive-Discord-Bot
  3. Install dependencies:
    • npm install

πŸ—οΈ Usage

πŸƒβ€β™‚οΈ Running the Project

  1. Start the development server:
    • npm start
  2. Open your browser and navigate to http://localhost:3000.

βš™οΈ Configuration

Adjust configuration settings in 'config.js' or '.env'.

πŸ“š Examples

  • πŸ“ Example 1: How to use the music commands
    • !play <song name>: Plays a song from YouTube
    • !queue <song name>: Adds a song to the queue
    • !skip: Skips the current song
    • !stop: Stops the music playback
  • πŸ“ Example 2: How to use the moderation commands
    • !mute <user>: Mutes a user
    • !unmute <user>: Unmutes a user
    • !kick <user>: Kicks a user from the server
    • !ban <user>: Bans a user from the server
  • πŸ“ Example 3: How to use the giveaway commands
    • !giveaway <duration> <prize>: Starts a new giveaway
    • !enter: Enters the current giveaway
    • !endgiveaway: Ends the current giveaway

🌐 Hosting

πŸš€ Deployment Instructions

  1. Prerequisites:
    • Heroku account
    • Heroku CLI (npm install -g heroku)
  2. Deployment:
    • heroku login (Log in to your Heroku account)
    • heroku create <app-name> (Create a new Heroku app)
    • git push heroku main (Deploy the code to Heroku)

πŸ”‘ Environment Variables

  • DISCORD_TOKEN: Your Discord bot token
  • MONGO_URI: Your MongoDB connection string

πŸ“œ License

This project is licensed under the MIT license.

πŸ‘₯ Authors

🌐 Spectra.Codes

Why only generate Code? When you can generate the whole Repository!