Groove Music

A powerful Discord music bot with LavaLink integration, featuring support for YouTube and Spotify, playlists, favorites, and much more!

Node.js Music von A l e x
Dieses Template deployen
Screenshot 1

Über

README.md

Inhalt
Auf GitHub öffnen

🎵 Groove Music

Groove Music Version Node.js Discord.js

High-Quality • Fast • Reliable

A powerful Discord music bot with LavaLink integration, featuring support for YouTube and Spotify, playlists, favorites, and much more!

Discord Server • Report Bug • Request Feature


✨ Features

  • 🎶 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)

📋 Commands Overview

🎵 Music Playback
  • /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
🎛️ Queue Management
  • /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
📝 Playlists
  • /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
⭐ Favorites
  • /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
🎚️ Audio Settings
  • /volume - Adjust the volume
  • /filter - Apply audio filters
  • /loop - Set loop mode (off/track/queue)
  • /autoplay - Toggle autoplay mode
ℹ️ Information
  • /help - Display help information
  • /ping - Check bot latency
  • /lyrics - Display lyrics for the current track

🚀 Quick Setup

Prerequisites
Installation
  1. Clone the repository

    Bash
    git clone https://github.com/faisaljs/Groove-Music.git
    cd Groove-Music
    
  2. Install dependencies

    Bash
    npm install
    
  3. Configure environment variables

    Create a .env file in the root directory:

    Env
    # 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
    
  4. Configure bot settings

    Edit Groove-Music/config.js to customize your bot:

    • Change the prefix (default: ,)
    • Adjust playlist limits
    • Configure default music platform
    • Set artwork style
  5. Start the bot

    Bash
    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):

  1. Download LavaLink from GitHub
  2. Create an application.yml configuration file
  3. Run LavaLink: java -jar Lavalink.jar
  4. Update your .env with your LavaLink credentials

🎨 Customization

Changing the Prefix

Edit Groove-Music/config.js:

JavaScript
PREFIX: '!',  // Change to your desired prefix
Adjusting Playlist Limits
JavaScript
MUSIC: {
    PLAYLIST_LIMIT: 3,  // Maximum number of playlists per user
}
Artwork Style

Choose between MusicCard (custom image card) or Banner (media gallery):

JavaScript
MUSIC: {
    ARTWORK_STYLE: 'MusicCard'  // or 'Banner'
}

📁 Project Structure

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

🔧 Troubleshooting

Bot doesn't respond to commands
  • Ensure the bot has proper permissions in your server
  • Check that the bot token is correct
  • Verify LavaLink is running and accessible
Music doesn't play
  • Confirm LavaLink server is online
  • Check LavaLink credentials in .env
  • Ensure the bot has Connect and Speak permissions in voice channels

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📝 Credits

Development Team

Groove Music is developed and maintained by Eleone Hub

Lead Developer
  • Faisal (faisaljs)
Built With
Special Thanks
  • Eleone Hub community for testing and feedback
  • All contributors who helped improve this project

📞 Support

Need help? Join our community!


📄 License

This project is licensed under the MIT License.


⚠️ Disclaimer

This bot is for educational and entertainment purposes. Please respect copyright laws and Discord's Terms of Service when using this bot.


Made with ❤️ by Eleone Hub

Discord Portfolio

If you like this project, please consider giving it a ⭐ on GitHub!

So deployen Sie es

  1. 1 Deploy-Seite öffnenBenennen Sie Ihr Deployment. Die Anmeldung erfolgt beim Bestätigen.
  2. 2 Variablen ausfüllenDie vom Template angefragten Werte, gespeichert als Umgebungsvariablen Ihres Deployments.
  3. 3 Ressourcen prüfenEs bezieht sie aus dem gemeinsamen Pool Ihres Tarifs und startet dann. Jedes Konto beginnt kostenlos.

Zum Melden anmelden

Meldungen sind zur Missbrauchsvermeidung an ein Konto gebunden.

Anmelden