A sophisticated Discord music bot with premium features, designed for engaging and personalized music experiences.
- 📍 Overview
- 📦 Features
- 📂 Structure
- 💻 Installation
- 🏗️ Usage
- 🌐 Hosting
- 📄 License
- 👏 Authors
The repository contains a project called "discord-music-bot-premium-expansion" that provides a comprehensive solution using the following tech stack: Javascript, Discord.js, Lavalink, MongoDB. This bot aims to elevate the Discord music experience with a robust feature set, including a premium system offering enhanced functionalities and exclusive benefits.
Feature | Description | |
---|---|---|
🎵 | Music Playback | Play, pause, resume, stop, skip, queue, song information display, queue management, volume control, equalizer, looping, shuffle, repeat. |
🔍 | Music Search | Search for music by title, artist, or URL across various supported music sources. |
🎶 | Playlists & Albums | Play music from pre-made playlists and albums. |
💾 | Personal Playlists | Create, manage, and save your own playlists. |
🎧 | Spotify Integration | Seamlessly play music from your Spotify library. |
👑 | Premium System | Access exclusive commands, higher quality audio streaming, customizable settings, priority support, and private music sessions. |
🤝 | Community Interaction | User-generated requests, voting systems, social media integration, and moderation tools. |
🧠 | AI-Powered Recommendations | Personalized music suggestions based on your listening history and preferences. |
👤 | Personalized Audio Profiles | Customize your listening experience with custom equalizer settings, volume preferences, and preferred music sources. |
🌐 | Multi-Server Management | Manage music across multiple Discord servers for large communities. |
📊 | Advanced Analytics | Track user engagement, music preferences, and bot performance for data-driven optimization. |
├── commands
│ ├── play.js
│ ├── pause.js
│ ├── resume.js
│ ├── stop.js
│ ├── skip.js
│ ├── queue.js
│ ├── nowplaying.js
│ ├── loop.js
│ ├── volume.js
│ ├── equalizer.js
│ ├── search.js
│ ├── playlist.js
│ ├── album.js
│ ├── shuffle.js
│ ├── repeat.js
│ ├── createplaylist.js
│ ├── addplaylist.js
│ ├── removeplaylist.js
│ ├── showplaylist.js
│ ├── deleteplaylist.js
│ ├── spotify.js
│ ├── premium.js
│ ├── help.js
│ └── settings.js
├── events
│ ├── ready.js
│ ├── message.js
│ ├── guildCreate.js
│ ├── guildDelete.js
│ ├── voiceStateUpdate.js
│ ├── interactionCreate.js
│ └── error.js
├── services
│ ├── musicService.js
│ ├── queueService.js
│ ├── playlistService.js
│ ├── userService.js
│ └── premiumService.js
├── models
│ ├── userModel.js
│ ├── playlistModel.js
│ ├── songModel.js
│ ├── guildModel.js
│ └── premiumModel.js
├── utils
│ ├── commandHandler.js
│ ├── logger.js
│ ├── errorHandler.js
│ ├── responseHandler.js
│ ├── embedGenerator.js
│ ├── apiHandler.js
│ ├── spotifyHandler.js
│ ├── queueManager.js
│ └── voiceManager.js
├── config
│ ├── env.config.js
│ ├── database.config.js
│ ├── lavalink.config.js
│ └── spotify.config.js
├── routes
│ ├── api.js
│ └── musicRoutes.js
├── middleware
│ ├── authentication.js
│ ├── permissions.js
│ ├── logging.js
│ ├── rateLimiter.js
│ └── errorHandler.js
├── .env
└── package.json
- Node.js (v18+)
- npm
- Docker
- Clone the repository:
git clone https://github.com/coslynx/discord-music-bot-premium-expansion.git
- Navigate to the project directory:
cd discord-music-bot-premium-expansion
- Install dependencies:
npm install
- Start the development server:
npm start
- Open your browser and navigate to http://localhost:3000.
Adjust configuration settings in config/env.config.js
.
- 📝 Play a song:
!play <song name>
- 📝 Add a song to the queue:
!queue <song name>
- 📝 Skip the current song:
!skip
- 📝 Create a playlist:
!createplaylist <playlist name>
- 📝 Connect your Spotify account:
!spotify connect
- 📝 Access a premium feature:
!premium <feature>
- 📝 Get help:
!help
- Create a Discord bot application:
- Visit https://discord.com/developers/applications and create a new application.
- Obtain a bot token:
- Go to the 'Bot' tab in your application settings and click 'Add Bot'.
- Copy the bot token; this is essential for the bot to connect to your Discord server.
- Set up Lavalink:
- Follow the instructions at https://lavalink.js.org/ to install and configure Lavalink. You'll need a server to host Lavalink.
- Configure environment variables:
- Create a
.env
file in your project root and set the following environment variables:DISCORD_TOKEN
: Your Discord bot token.LAVALINK_HOST
: The hostname of your Lavalink server.LAVALINK_PORT
: The port number of your Lavalink server.LAVALINK_PASSWORD
: The password for your Lavalink server.MONGO_URI
: The connection URI for your MongoDB database.
- Create a
- Deploy the bot:
- Use a hosting platform like Heroku or AWS. Configure your hosting environment with the required dependencies (Node.js, MongoDB) and ensure your bot's code is accessible.
- Add the bot to your Discord server:
- Go to the 'OAuth2' tab in your Discord application settings.
- Select 'Bot' as the scope and enable the 'Administrator' permission.
- Copy the generated authorization URL and paste it into your browser.
- Choose the server where you want to add your bot.
This project is licensed under the GNU AGPLv3.
- Author Name - Spectra.codes
- Creator Name - DRIX10
Why only generate Code? When you can generate the whole Repository!