🤖 EvoBot (Discord Music Bot)
EvoBot is a Discord Music Bot built with TypeScript, discord.js & uses Command Handler from discordjs.guide
Requirements
- Discord Bot Token Guide
1.1. Enable 'Message Content Intent' in Discord Developer Portal - Node.js 16.11.0 or newer
🚀 Getting Started
git clone https://github.com/eritislami/evobot.git
cd evobot
npm install
After installation finishes follow configuration instructions then run npm run start
to start the bot.
⚙️ Configuration
Copy or Rename config.json.example
to config.json
and fill out the values:
{
"TOKEN": "",
"MAX_PLAYLIST_SIZE": 10,
"PREFIX": "!",
"PRUNING": false,
"LOCALE": "en",
"DEFAULT_VOLUME": 100,
"STAY_TIME": 30
}
🐬 Docker Configuration
For those who would prefer to use our Docker container, you may provide values from config.json
as environment variables.
docker run -e "TOKEN=<discord-token>" eritislami/evobot
📝 Features & Commands
Note: The default prefix is '!'
- 🎶 Play music from YouTube via url
!play https://www.youtube.com/watch?v=GLvohMXgcBo
- 🔎 Play music from YouTube via search query
!play under the bridge red hot chili peppers
- 🎶 Play music from Soundcloud via url
!play https://soundcloud.com/blackhorsebrigade/pearl-jam-alive
- 🔎 Search and select music to play
!search Pearl Jam
Reply with song number or numbers seperated by comma that you wish to play
Examples: 1
or 1,2,3
- 📃 Play youtube playlists via url
!playlist https://www.youtube.com/watch?v=YlUKcNNmywk&list=PL5RNCwK3GIO13SR_o57bGJCEmqFAwq82c
- 🔎 Play youtube playlists via search query
!playlist linkin park meteora
- Now Playing (!np)
- Queue system (!queue, !q)
- Loop / Repeat (!loop)
- Shuffle (!shuffle)
- Volume control (!volume, !v)
- Lyrics (!lyrics, !ly)
- Pause (!pause)
- Resume (!resume, !r)
- Skip (!skip, !s)
- Skip to song # in queue (!skipto, !st)
- Move a song in the queue (!move, !mv)
- Remove song # from queue (!remove, !rm)
- Play an mp3 clip (!clip song.mp3) (put the file in sounds folder)
- List all clips (!clips)
- Show ping to Discord API (!ping)
- Show bot uptime (!uptime)
- Toggle pruning of bot messages (!pruning)
- Help (!help, !h)
- Command Handler from discordjs.guide
- Media Controls via Reactions
🌎 Locales
Currently available locales are:
- English (en)
- Arabic (ar)
- Brazilian Portuguese (pt_br)
- Czech (cs)
- Dutch (nl)
- French (fr)
- German (de)
- Greek (el)
- Indonesian (id)
- Italian (it)
- Japanese (ja)
- Korean (ko)
- Minionese (mi)
- Persian (fa)
- Polish (pl)
- Russian (ru)
- Simplified Chinese (zh_cn)
- Singaporean Mandarin (zh_sg)
- Spanish (es)
- Swedish (sv)
- Traditional Chinese (zh_tw)
- Thai (th)
- Turkish (tr)
- Ukrainian (uk)
- Vietnamese (vi)
- Check Contributing if you wish to help add more languages!
- For languages please use ISO 639-1 two letter format
🤝 Contributing
- Fork the repository
- Clone your fork:
git clone https://github.com/your-username/evobot.git
- Create your feature branch:
git checkout -b my-new-feature
- Stage changes
git add .
- Commit your changes:
cz
ORnpm run commit
do not usegit commit
- Push to the branch:
git push origin my-new-feature
- Submit a pull request