Skip to content
forked from ZPTXDev/Quaver

Open-source music bot for small communities.

License

Notifications You must be signed in to change notification settings

xayanide/Quaver

 
 

Repository files navigation

Quaver

Simple-to-use music bot with features such as bass boost, nightcore, seek, search, and more.

GitHub package.json version (branch) GitHub package.json version (branch) GitHub package.json version (branch)

CodeFactor Grade Discord

🎵 Public Instance

Quaver is available for public use here, and its dashboard is available here. Keep in mind that this instance of Quaver will only run the latest stable version.

🚀 Getting Started

Using Quaver

Quaver utilizes Discord's built-in slash commands, buttons, select menus, modals, and more. After deploying the commands, type / into your chat to list Quaver's commands.

As Quaver is designed to be as user-friendly as possible, users should be able to immediately understand how a function works within Quaver without having to read any documentation.

Prerequisites

  • Node.js v22.12.0 (or higher) with pnpm 8.15.9

Tip

Alternatively, you may use Bun v1.3.2 (or higher) instead of Node.js and pnpm.

Note

Please note the connection details of your Lavalink instance. You will need to specify them in settings.json later.

Setup

  1. Download the latest release from here
  2. Extract the contents of the ZIP file
  3. Run bun i --production or pnpm i --prod to install packages required to run Quaver
  4. Make a copy of settings.example.json and rename it to settings.json
  5. Edit the fields in settings.json as necessary

Tip

Refer to CONFIGURATION.md for a detailed explanation on configuration.

  1. Run bun run slash:register:global or pnpm run slash:register:global to deploy slash commands
  2. Run bun run start or pnpm start to start Quaver

Warning

Please use only one package manager (Bun or pnpm) to avoid potential issues.

❔ FAQ

Can I get in trouble with Google/YouTube for using this?

I cannot guarantee anything. However, the chances of getting into legal trouble is slim if your bot is used privately. I would still exercise caution when hosting any music bot.

Can you add x feature to Quaver?

I'll consider it! Submit an issue here and I'll be happy to take a look.

I changed the language through the /settings command. Why isn't it updating in slash commands?

Slash commands are defined when running bun run slash:register:global or pnpm run slash:register:global.

This means that slash command descriptions will follow the language set in settings.json (defaultLocaleCode key), and not the language set through the /settings command.

I changed defaultLocaleCode, but it isn't updating in slash command descriptions. Why?

You need to re-deploy the commands using bun run slash:register:global or pnpm run slash:register:global for the new locale to take effect.

Due to Discord's limitations and the localizations we have, we don't currently use Discord's localized command name & description functionality. This may be worked on in the future.

Can I control Quaver from some kind of website/dashboard?

Yes! As of 5.0.0, Quaver has a web dashboard add-on available here. Please note that this is an optional addon and is not required to run Quaver normally.

What happened to Spotify support?

As of 7.0.2, Spotify support is provided through Lavalink. Please use the LavaSrc plugin with Lavalink to enable Spotify support.

Lyrics aren't showing up. What do I do?

Make sure you have the java-timed-lyrics plugin installed, and ensure plugins.lavasrc.lyrics-sources is defined in your Lavalink configuration. Quaver uses a combination of both plugins to fetch and display lyrics.

💬 Translating

Take a look at our Crowdin project.

📝 Contributing

Refer to CONTRIBUTING.md.

About

Open-source music bot for small communities.

Resources

License

Contributing

Stars

Watchers

Forks

Languages

  • TypeScript 86.3%
  • JavaScript 13.7%