A powerful, feature-rich Discord music bot built with Discord.js v14
๐ถ Music Streaming
- High-quality audio playback from YouTube
- Search songs by name or paste direct URLs
- Autocomplete search suggestions
- Queue management with unlimited songs
๐๏ธ Advanced Controls
- Play, pause, skip, stop, shuffle
- Volume control (1-100%)
- Seek to specific timestamps
- Loop modes (song/queue/off)
- Speed control (0.25x - 3.0x)
๐๏ธ Audio Enhancement
- Multiple audio filters (bass boost, nightcore, 8D, etc.)
- Bass and treble adjustment (-10 to +10)
- Custom equalizer settings
- Audio normalization
๐ Queue Features
- View current queue with thumbnails
- Remove specific songs
- Move songs to different positions
- Clear queue or remove duplicates
- Queue history tracking
๐พ Playlist System
- Save songs and queues as playlists
- Load saved playlists instantly
- Personal playlist management
- Grab songs to DMs
๐ง Utility
- 24/7 mode for persistent playback
- Auto-leave empty channels
- Real-time now playing display
- Bot statistics and uptime
- Admin controls and user blocking
- Node.js 18+
- Discord Bot Token
- FFmpeg (for audio processing)
# Clone the repository
git clone https://github.com/tejvz/vibes-music.git
cd vibes-music
# Install dependencies
npm install
# Create environment file
cp .env.example .envEdit the .env file with your bot credentials:
DISCORD_TOKEN=your_bot_token_here
CLIENT_ID=your_application_id_here
OWNER_ID=your_discord_user_id_here
PORT=3000# Development mode
npm run dev
# Production mode
npm start| Command | Description | Usage |
|---|---|---|
/play |
Play a song from YouTube | /play song:Never Gonna Give You Up |
/pause |
Pause the current song | /pause |
/resume |
Resume paused music | /resume |
/skip |
Skip current song or jump to position | /skip or /skip to:5 |
/stop |
Stop music and clear queue | /stop |
/previous |
Play the previous song | /previous |
/nowplaying |
Show current song with controls | /nowplaying |
| Command | Description | Usage |
|---|---|---|
/volume |
Set playback volume (1-100) | /volume level:75 |
/seek |
Jump to specific time | /seek time:1:30 |
/speed |
Change playback speed | /speed rate:1.25 |
/loop |
Set loop mode | /loop mode:queue |
/shuffle |
Shuffle the current queue | /shuffle |
/autoplay |
Toggle autoplay mode | /autoplay enabled:true |
| Command | Description | Usage |
|---|---|---|
/queue show |
Display current queue | /queue show |
/queue clear |
Clear the entire queue | /queue clear |
/queue remove |
Remove song from queue | /queue remove position:3 |
/queue move |
Move song to different position | /queue move from:5 to:2 |
/skipto |
Skip to specific queue position | /skipto position:7 |
/removedupes |
Remove duplicate songs | /removedupes |
| Command | Description | Usage |
|---|---|---|
/filters |
Apply audio filters | /filters filter:bassboost |
/bass |
Adjust bass level (-10 to 10) | /bass level:5 |
/treble |
Adjust treble level (-10 to 10) | /treble level:-2 |
/reset |
Reset all audio settings | /reset |
| Command | Description | Usage |
|---|---|---|
/save |
Save song/queue as playlist | /save name:My Playlist type:queue |
/playlist load |
Load a saved playlist | /playlist load name:My Playlist |
/playlist list |
Show your playlists | /playlist list |
/grab |
Save current song to DMs | /grab |
/search |
Search and choose from results | /search query:rock music |
/lyrics |
Get song lyrics | /lyrics |
/history |
Show recently played songs | /history |
/stats |
Show bot statistics | /stats |
| Command | Description | Usage |
|---|---|---|
/join |
Join your voice channel | /join |
/leave |
Leave voice channel | /leave |
/24by7 |
Toggle 24/7 mode | /always enabled:true |
/restart |
Restart the bot (owner only) | /restart |
/block |
Block user from bot (admin) | /block user:@user |
The bot features beautiful embed messages with interactive button controls:
๐๏ธ Music Controls
- โฎ๏ธ Previous | โธ๏ธ Pause/Resume | โญ๏ธ Skip | โน๏ธ Stop | ๐ Queue
๐ง Advanced Controls
- ๐ Shuffle | ๐ Loop | ๐ Vol- | ๐ Vol+ | ๐พ Save
vibes-music/
โโโ index.js
โโโ config.js
โโโ package.json
โโโ .env
โโโ .gitignore
โโโ README.md
- discord.js v14 - Discord API wrapper
- @discordjs/voice - Voice connection handling
- ytdl-core - YouTube audio streaming
- ytsr - YouTube search functionality
- express - Web server for health checks
The bot uses a comprehensive configuration system. See config.js for all available options including:
- Audio quality settings
- Default volume and loop modes
- Cache configurations
- Rate limiting
- Embed customization
- Error handling
The bot includes a built-in web server for monitoring:
- Health Check:
GET /health - Bot Stats:
GET /stats - General Info:
GET /
Access at: http://localhost:3000 (or your configured port)
heroku create your-bot-name
heroku config:set DISCORD_TOKEN=your_token
heroku config:set CLIENT_ID=your_client_id
heroku config:set OWNER_ID=your_user_id
git push heroku mainFROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
CMD ["npm", "start"]We welcome contributions! Here's how to get started:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow existing code style
- Add comments for complex logic
- Test thoroughly before submitting
- Update documentation as needed
This project is licensed under the MIT License - see the LICENSE file for details.
Need help? Join our community:
- ๐ Bug Reports: GitHub Issues
- ๐ก Feature Requests: GitHub Discussions
- ๐ฌ General Help: Discord Server
- Thanks to all contributors who help improve Vibes Music
- Built with โค๏ธ using Discord.js v14
- Special thanks to the open-source community
โญ Star this repository if you found it helpful!
Made with ๐ by Tejv