GithubHelp home page GithubHelp logo

lewdhutao / musicbot Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 1.0 673 KB

Yet another Discord Music Bot using Discord.js v14 and Lavalink v4

License: ISC License

Dockerfile 0.21% Makefile 0.53% Shell 0.78% JavaScript 98.48%
discord-music-bot discordjs discordjs-v14 djs javascript lavalink lavalink-v4 musicbot nodejs spotify youtube

musicbot's Introduction

Discord Music Bot

Features

  • Built using Discord.js v14 and Lavalink v4
  • Supports Slash Commands, Context Commands, and Prefix Commands
  • User-friendly and easy to set up
  • 24/7 Music Playback
  • Customizable Prefix
  • Supports Docker

Supported Sources

YouTube SoundCloud Bandcamp Twitch Vimeo Nico HTTP Mixer

Required Plugins

Note: If you use Lavalink Docker, LavaSrc and Youtube-Source Plugins are already installed. You just need to set up in lavalink/application.yml

Spotify Apple Music Deezer

Requirements

  • Node Version v18.x or higher
  • Lavalink v4
  • MongoDB (You can set up a free MongoDB server here)

Installation

You can run this bot with or without Docker. For an easy setup, use the make command. If make is not available, use run.sh. Ensure Docker is installed on your machine to use the bot with Docker.

Using Make

Make help

Without Make

  • Before using ./run.sh, make sure to run chmod +x ./run.sh.

NoMake Help

Before you start the bot, ensure you have filled out everything in src/config.js.

Command Usage (Docker)

  1. make start or ./run.sh start: Starts the bot with Lavalink using Docker Compose.

Make Start

  1. make start-noll or ./run.sh start-noll: Starts the bot without Lavalink using Docker Compose.

Make Noll

  1. make restart or ./run.sh restart: Restarts the bot.

Make Restart

  1. make stop or ./run.sh stop: Stops the bot.

Make Stop

  1. make clean or ./run.sh clean: Removes Docker containers.

Make Clean

Command Usage (Without Docker)

  1. make start-local or ./run.sh start local: Starts the bot locally on your machine without Docker Compose.

Note: If you use a VPS and start the bot without Docker, make sure to use pm2 to keep the bot online 24/7.

Local Start


Preview

Preview 1 Preview 2 Preview 3 Preview 4

LICENSE

This project is licensed under the ISC License. You are free to use the music bot for any purpose, including making it public or verifying the bot.

musicbot's People

Contributors

lewdhutao avatar

Stargazers

Fyphen avatar  avatar

Watchers

 avatar  avatar

Forkers

patrykpatryk5

musicbot's Issues

Version 1.0.0

v1.0.0 checklist

  • Bot structure
  • Use docker
  • Use makefile for easy setup
  • Add slash command
  • Add client events
  • Add node events
  • Add message command
  • Add context command
  • Add custom prefix
  • Add lavalink docker
  • Better logger
  • Add mongo structure for db

Musicbot v1.0.5

  • Add permissions check before send message
  • Refactor player handler code
  • Refactor code how bot join stage channel
  • Manually disconnect the bot from vc will now destroy the player
  • Fix player automatically stopped after changing voice channel region
  • Fix player destroy by itself if track empty or error without checking the player
  • Fix track stuck/error message is not deleted
  • Fix lyrics command not working if no query
  • Fix track stop play after move to other vc
  • Fix bot join the vc if no query when use play prefix cmd
  • Fix player not destroy properly if 24/7 or autoplay mode is enabled
  • Fix bot return error if no permission to connect to stage as speaker
  • Fix canvas deleted by itself if permissions is not correct for the bot

All commit are pushed to https://github.com/lewdhutao/musicbot/tree/dev

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.