• Stars
    star
    137
  • Rank 266,121 (Top 6 %)
  • Language
    Rust
  • License
    MIT License
  • Created about 3 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🦜 A hassle-free, highly performant, self-hosted Discord music bot with YouTube and Spotify support. Powered by yt-dlp.

Light

A hassle-free, highly performant, host-it-yourself Discord music bot

Deployment

Usage

Just create a bot account, and copy its token and application id to a .env with the DISCORD_TOKEN and DISCORD_APP_ID environment variables respectively. Optionally, you may also define SPOTIFY_CLIENT_ID and SPOTIFY_CLIENT_SECRET. We recommend using our .env.example as a starting point.

Docker

docker run -d --env-file .env --restart unless-stopped --name parrot ghcr.io/aquelemiguel/parrot:latest

Development

Make sure you've installed Rust. You can install Rust and its package manager, cargo by following the instructions on https://rustup.rs/. After installing the requirements below, simply run cargo run.

Linux/MacOS

The commands below install a C compiler, GNU autotools and FFmpeg, as well as yt-dlp through Python's package manager, pip.

Linux

apt install build-essential autoconf automake libtool ffmpeg
pip install -U yt-dlp

MacOS

brew install autoconf automake libtool ffmpeg
pip install -U yt-dlp

Windows

If you are using the MSVC toolchain, a prebuilt DLL for Opus is already provided for you.
You will only need to download FFmpeg, and install yt-dlp which can be done through Python's package manager, pip.

pip install -U yt-dlp

If you are using Windows Subsystem for Linux (WSL), you should follow the Linux/MacOS guide, and, in addition to the other required packages, install pkg-config, which you may do by running:

apt install pkg-config

Testing

Tests are available inside the src/tests folder. They can be run via cargo test. It's recommended that you run the tests before submitting your Pull Request. Increasing the test coverage is also welcome.

Docker

Within the project folder, simply run the following:

docker build -t parrot .
docker run -d --env-file .env parrot

More Repositories

1

its-ok-i-guess

🧐 Guess the game from the Steam review!
Svelte
45
star
2

vreddit-mirror-bot

🎥 Reddit bot that mirrors videos hosted on the native Reddit player to Gfycat and Streamable.
Python
23
star
3

yt-restore-dislikes

👎 A browser extension for restoring the dislike count on YouTube videos.
JavaScript
22
star
4

ainda-ha-covid-19-amanha

😷 A(nother) minimal dashboard tracking and predicting the COVID-19 pandemic spread in Portugal.
JavaScript
15
star
5

nvending-monday-exploit

☕ An overly detailed and somewhat deranged report of an infamous NVending malfunction incident.
13
star
6

geoguessr-plus

🌍 A sleek Chrome extension that enhances your Geoguessr experience with advanced round info and more.
JavaScript
10
star
7

advent-of-code-2020

🎄 Personal solutions for Advent of Code 2020 (in C++).
C++
10
star
8

steamding

🏆 Add a notification chime to your Steam achievements.
Python
7
star
9

itaots-reddit

💿 A Reddit bot for disambiguating album abbreviations.
Rust
3
star
10

retrojam-2017

🕹 A game created in 31 hours for IEEE & Porto Graphics' 2017 RETRO JAM, entirely developed for the PICO-8 fantasy console.
Lua
3
star
11

artifact-beta-2.0-unofficial-api

🎴 An unofficial open-source API for @ValveSoftware's Artifact Beta 2.0.
Python
3
star
12

advent-of-code-22

🎄 My personal Advent of Code '22 solutions, done in 🦀
Rust
3
star
13

advent-of-code-2021

🎄 Personal solutions for Advent of Code '21 in Rust.
Rust
2
star
14

advent-of-code-23

🎄 my solutions for advent of code '23, powered by TS and bun.sh
TypeScript
2
star
15

google-competitions

⏱ Submissions for Google Hash Code and Kick Start.
C++
2
star
16

feup-plog

Every project developed at Logic Programming course at FEUP.
Prolog
1
star
17

feup-voip

📞 A VoIP Java application developed for Distributed Systems course @FEUP.
Java
1
star
18

feup-aiad

Java
1
star
19

road-to-swerc

🎈 Stores personal competitive programming exercise solutions from places like SPOJ and UVa.
C++
1
star