Skip to content

vulk7n/black-music

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎵 Black-Music Bot

Music Banner
A Premium, Persistent, and Aesthetic Discord Music Bot

Discord.js Node.js Repo

✨ Features

  • 🎹 High Quality Music: Powered by Lavalink (Kazagumo & Shoukaku) for lag-free, high-quality audio.
  • 🛰️ Smart Node Selection: Automatically discovers and connects to stable public Lavalink nodes.
  • 🛡️ Domain-Aware Filtering: Intelligent logic to prevent redundant connections and avoid IP rate limits (429 errors).
  • 🎛️ Interactive Dashboard: Real-time updating embed with control buttons (Play, Pause, Skip, Loop, Shuffle, Volume).
  • ⚡ Autocomplete Cache: Instant search suggestions with a 5-minute memory to reduce server load.
  • 💾 Persistence: Automatically saves your volume settings and music channel preferences using Appwrite.
  • ** Aesthetic UI**: Modern embeds, dynamic status, and a clean, lightweight design.

🛠️ Prerequisites

Before you start, make sure you have:

  1. Node.js: Version 18.0.0 or higher.
  2. Discord Bot Token: Get it from the Discord Developer Portal.
  3. Appwrite Cloud: Create a free account at Appwrite.io (Project ID, API Key).

🚀 Installation

  1. Clone the Repository

    git clone https://github.com/vulk7n/black-music.git
    cd black-music
  2. Install Dependencies

    npm install
  3. Configure Environment Create a .env file and fill in your details:

    # Discord Configuration
    DISCORD_TOKEN=your_bot_token_here
    CLIENT_ID=your_client_id
    GUILD_ID=your_testing_guild_id
    
    # Primary Lavalink Node
    LAVALINK_HOST=lavalink.serenetia.com
    LAVALINK_PORT=443
    LAVALINK_PASSWORD=https://dsc.gg/ajidevserver
    LAVALINK_SECURE=true
    
    # Smart Node Discovery (Recommended)
    SMART_NODE_SELECTION=true
    
    # Appwrite (Database Persistence)
    APPWRITE_PROJECT_ID=your_project_id
    APPWRITE_ENDPOINT=https://sgp.cloud.appwrite.io/v1
    APPWRITE_API_KEY=your_api_key
  4. Start the Bot

    npm start

�️ Robustness & Performance

This bot is designed for production-level stability:

  • Rate Limit Protection: Auto-filters redundant nodes to stay within provider limits.
  • Resource Optimized: Dashboard refresh rates are tuned for low CPU usage (15s updates).
  • Auto-Fallback: If one node fails, Kazagumo automatically shifts the player to the next healthy node.

🎮 Commands

Command Description
/play <song> Play a song with instant autocomplete suggestions
/setup Initialize the aesthetic music dashboard
/volume <0-200> Adjust volume (Persists across restarts!)
/skip Skip to the next track
/reset Clean up and reset the bot state

📜 License

Distributed under the MIT License. See LICENSE for more information.

Made with ❤️ by VLKN😼

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors