Skip to content

Latest commit

 

History

History
252 lines (198 loc) · 7.75 KB

README.md

File metadata and controls

252 lines (198 loc) · 7.75 KB

Version Contributors Forks Stargazers Issues MIT License

Run on Repl.it Remix on Glitch


Pbot-plus

lavamusic

Lavamusic is a powerful music Bot

Invite Lavamusic · Report Bug · Request Feature

🎭 Features

  • ✅ Music
  • ✅ Prefix

🎶 Support Sources

  • ✅ YouTube
  • ✅ SoundCloud
  • ✅ Twitch
  • ✅ Bandcamp
  • ✅ Vimeo
  • ✅ Https (Radio)
More source(s)

Plugins (Require: LavaLink v3.6.x)

📚 Commands

Click to expand
Name Description
prefix Shows the bot's prefix
Options
-------------
prefix: The prefix you want to set
about Shows information about the bot
None
help Shows the help menu
Options
-------------
command: The command you want to get info on
info Ingormation about the bot
None
invite Sends the bot's invite link
None
ping Shows the bot's ping
None
clearqueue Clears the queue
None
join Joins the voice channel
None
leave Leaves the voice channel
None
nowplaying Shows the currently playing song
None
play Plays a song from YouTube or Spotify
Options
-------------
song: The song you want to play
pause Pauses the current song
None
queue Shows the current queue
None
remove Removes a song from the queue
Options
-------------
song: The song number
resume Resumes the current song
None
seek Seeks to a certain time in the song
None
shuffle Shuffles the queue
None
skip Skips the current song
None
skipto Skips to a specific song in the queue
None
stop Stops the music and clears the queue
None
volume Sets the volume of the player
Options
-------------
number: The volume you want to set

📥 Installation guide

Lavamusic is a Discord music bot that uses Discord.js, Shoukaku, Prisma Client (ORM) database (MongoDB), and TypeScript.

🔧 Requirements

Before starting with the installation, you need to have the following:

  • Node.js (v18.x or higher)
  • A Discord bot token
  • A MongoDB database
  • A Lavalink server (for audio playback)

📝 Setup

  1. Clone the Lavamusic repository:
git clone  https://github.com/brblacky/lavamusic.git
  1. change the directory to Lavamusic
cd lavamusic
  1. Install the required packages:
npm install
  1. Set up your environment variables:

Create a .env file in the root directory of your project with the following variables:

TOKEN="." # Your bot token
PREFIX="!" # Your prefix
OWNER_IDS="859640640640640640, 859640640640640640" # Your ID
CLIENT_ID="960072976412340254" # Your bot client ID
GUILD_ID="859640640640640640" # Your server ID (if you want to use it for a single server)
PRODUCTION="true" # "true" for production
DATABASE_URL="mongodb+srv://Blacky:xxxxxxxxxxxx" # Your MongoDB URL
LAVALINK_URL="localhost:2333" # Your Lavalink URL
LAVALINK_AUTH="youshallnotpass" # Your Lavalink password
LAVALINK_NAME="Blacky" # Your Lavalink name
LAVALINK_SECURE="false" # "true" for secure Lavalink
  1. Generate the Prisma client:

If you using replit than read this:

go to prisma/schema.prisma and add engine type like this

generator client {
  provider = "prisma-client-js"
  engineType = "binary"
}

and then run this command

npx prisma generate
  1. Run the bot:
npm run start or npm start
  1. Invite the bot to your server:

Generate an invite link for your bot and invite it to your server using the Discord Developer Portal.

🔗 Useful Links

📝 Tutorial

A Tutorial has been uploaded on YouTube, Watch it by clicking here

📜 Contributing

Thank you for your interest in contributing to Lavamusic! Here are some guidelines to follow when contributing:

  1. Fork the repository and create a new branch for your feature or bug fix.
  2. Write clean and concise code that follows the established coding style.
  3. Create detailed and thorough documentation for any new features or changes.
  4. Write and run tests for your code.
  5. Submit a pull request with your changes.

Your contribution will be reviewed by the project maintainers, and any necessary feedback or changes will be discussed with you. We appreciate your help in making Lavamusic better!

🔐 License

Distributed under the Apache-2.0 license License. See LICENSE for more information.