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!