High-Quality β’ Fast β’ Reliable β’ Premium
A powerful Discord music bot with LavaLink integration, featuring support for YouTube and Spotify, playlists, favorites, and much more!
Discord Server β’ Bot-Hosting.net β’ Report Bug β’ Request Feature
Want to host Groove Music without setting up your own server? You can easily deploy it using Bot-Hosting.net.
π Click Here to create free Bot-Hosting.net account.
After creating your account:
- Go to the Templates section in your Bot-Hosting.net dashboard.
- Search for Groove-Music.
- Select the Groove-Music template.
- Deploy the template to your server.
- Configure your required environment variables, including your Discord bot token and LavaLink credentials.
- Start your bot and you're ready to enjoy Groove Music! π΅
π‘ New to Bot-Hosting.net? Use the button above to create your account, then find Groove-Music in the Templates section.
Create Account β Templates β Groove-Music β Deploy β Configure β Start
Enjoy hosting Groove Music on Bot-Hosting.net! π
- πΆ High-Quality Music Playback - Powered by LavaLink for the best audio quality
- π΅ Multi-Platform Support - Play from YouTube and Spotify
- π Playlist Management - Create, save, and share custom playlists
- β Favorites System - Save your favorite tracks for quick access
- πΌ Queue Management - Full control over your music queue
- ποΈ Audio Filters - Apply various audio effects to customize your listening experience
- π€ Lyrics Support - Display lyrics for currently playing tracks
- π Loop Modes - Loop single tracks or entire queues
- β―οΈ Playback Controls - Play, pause, skip, shuffle, and more
- π² Autoplay - Automatically queue similar songs when the queue ends
- πΌοΈ Beautiful Music Cards - Custom artwork for now playing displays
- β‘ Slash Commands - Modern Discord slash command support
- π Prefix Commands - Traditional prefix commands (
,by default)
/play- Play a song or add it to the queue/pause- Pause the current track/resume- Resume playback/skip- Skip to the next track/stop- Stop playback and clear the queue/nowplaying- Display currently playing track/queue- View the current queue
/shuffle- Shuffle the queue/clear- Clear the entire queue/remove- Remove a specific track from the queue/move- Move a track to a different position/back- Go back to the previous track/seek- Seek to a specific position in the track
/playlist-save- Save the current queue as a playlist/playlist-load- Load a saved playlist/playlist-list- View all your playlists/playlist-delete- Delete a playlist/playlist-rename- Rename a playlist/playlist-share- Share a playlist with others/playlist-import- Import a playlist from a link/playlist-track-add- Add a track to a playlist/playlist-track-remove- Remove a track from a playlist/playlist-track-list- View tracks in a playlist
/favorite-add- Add current track to favorites/favorite-remove- Remove a track from favorites/favorite-list- View all your favorite tracks/favorite-play- Play a track from your favorites
/volume- Adjust the volume/filter- Apply audio filters/loop- Set loop mode (off/track/queue)/autoplay- Toggle autoplay mode
/help- Display help information/ping- Check bot latency/lyrics- Display lyrics for the current track
- Node.js v84 or higher
- A Discord bot token (Create one here)
- LavaLink server (see LavaLink Setup)
- (Optional) Spotify API credentials
- (Optional) Genius API key for lyrics
-
Clone the repository
git clone https://github.com/faisaljs/Groove-Music.git cd Groove-Music -
Install dependencies
npm install
-
Configure environment variables
Create a
.envfile in the root directory:# Bot Configuration BOT_TOKEN=your_discord_bot_token CLIENT_ID=your_bot_client_id # LavaLink Configuration LAVALINK_HOSTS=your.lavalink.host LAVALINK_PORTS=2333 LAVALINK_PASSWORDS=youshallnotpass LAVALINK_SECURES=false # Optional: Genius Lyrics GENIUS_API_KEY=your_genius_api_key
-
Configure bot settings
Edit
Groove-Music/config.jsto customize your bot:- Change the prefix (default:
,) - Adjust playlist limits
- Configure default music platform
- Set artwork style
- Change the prefix (default:
-
Start the bot
npm start
Groove Music requires a LavaLink server to function. You have two options:
You can use free public LavaLink servers (not recommended for production):
- Download LavaLink from GitHub
- Create an
application.ymlconfiguration file - Run LavaLink:
java -jar Lavalink.jar - Update your
.envwith your LavaLink credentials
Edit Groove-Music/config.js:
PREFIX: '!', // Change to your desired prefixMUSIC: {
PLAYLIST_LIMIT: 3, // Maximum number of playlists per user
}Choose between MusicCard (custom image card) or Banner (media gallery):
MUSIC: {
ARTWORK_STYLE: 'MusicCard' // or 'Banner'
}Groove-Music/
βββ commands/ # Slash commands
βββ pCommands/ # Prefix commands
βββ music/ # Music client and event handlers
βββ helpers/ # Utility functions and helpers
βββ utils/ # Logging, permissions, validation
βββ database/ # Database models (favorites, playlists)
β βββ models/
βββ assets/ # Images and resources
βββ config.js # Bot configuration
βββ index.js # Main entry point
βββ emojis.json # Custom emoji definitions
- Ensure the bot has proper permissions in your server
- Check that the bot token is correct
- Verify LavaLink is running and accessible
- Confirm LavaLink server is online
- Check LavaLink credentials in
.env - Ensure the bot has
ConnectandSpeakpermissions in voice channels
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Groove Music is developed and maintained by Eleone Hub
- Faisal (faisaljs)
- Discord:
alex.jsz - Portfolio: faisal.dev
- Discord:
- Discord.js - Discord API library
- Poru - LavaLink client
- LavaLink - Audio delivery server
- Sequelize - Database ORM
- Eleone Hub community for testing and feedback
- All contributors who helped improve this project
Need help? Join our community!
- Discord Server: https://discord.gg/TGF3fCXtRm
- Developer Contact: Discord @
alex.jsz - Portfolio: faisal.dev
This project is licensed under the MIT License.
This bot is for educational and entertainment purposes. Please respect copyright laws and Discord's Terms of Service when using this bot.