Thanks to JetBrains for providing me free license for developing this project!
- Multi guild!
- Play songs or playlists from YouTube, Spotify, Apple Music and YouTube Music
- Save your favorite songs!
- Support voice and stage channels
- Allow the BOT to only play music in specific voice channels
- Allow DJ roles to manage songs
- Vote skip and force play
- Much more!
- Want to contribute? Feel free to make any changes you want
- Fork or clone the repo
- Make any changes you want (You can also see
todo
file) - Open a pull request explaining what changes you've made
- I (el bkr) will review it and accept it :D
- In case you want to contribute, and you need more emojis, you can get them from Icons 8
- Node v16 or higher
- GitHub CLI:
gh repo clone elbkr/music-bot
- Download and extract the zip
- Open with GitHub Desktop
- Create an application in Discord Developer Portal
- Create a BOT and Copy the BOT token
- Enable all privileged gateway intents
- Go to OAuth2 and copy the client ID
- Paste the token at
TOKEN
line and the client ID atCLIENT_ID
line in.env
file - Change
REPLACE_THIS
in the following URL with the client ID, and enter the link in your browser
- Log in or register into Mongo DB
- Create a cluster and complete the configuration
- Get the connection URL by pressing on
connect < connect your application
- Replace the
password
with your database access password - Paste the URL into the
.env
file at theMONGO
line
The URL looks like this: mongodb+srv://username:password@clusterName.pjxpv.mongodb.net/MyFirstDatabase?retryWrites=true&w=majority
Run the bot and the emojis will be automatically registered.
- Download the emojis from the
resource/emojis
folder - Add the emojis with the same name to a server that the BOT can access and won't leave
- Copy the server ID
- Paste the server ID into the
.env
file at theEMOJIS_GUILD_ID
line
- You can also use your emojis, but it could cause errors. In that case, you have to add them with the same names as the ones in
resource/emojis
folder
After the configuration, the .env
file should look like this:
TOKEN=SuPerReALToken.BelIeVe_Me_itS_ReaL
MONGO=mongodb+srv://username:password@clusterName.pjxpv.mongodb.net/MyFirstDatabase?retryWrites=true&w=majority
CLIENT_ID=521311050193436682
EMOJIS_GUILD_ID=831236275162972180
- Open a terminal and run
npm install
ornpm i
- Run
node .
- Local host
- After the configuration, run
node .
in the terminal (not recommended) - It turns off when you turn off the PC
- After the configuration, run
- Heroku
- After the configuration, add the files to a GitHub repository
- Log in or register in Heroku
- Create a new app
- In the
deploy
section, pressConnect to GitHub
- After connecting, search for the repository and press
connect
- Press Enable automatic deploys (optional)
- Click Deploy Branch
- Go to the
Resources
section - Disable the
web
type and enable theworker
type