A Discord music bot with YouTube and Spotify support, built with Python.
- Play music from YouTube URLs, Spotify URLs (tracks, playlists, albums), or search queries
- Per-server queue with skip, pause, resume, and stop controls
- EBU R128 loudness normalization for consistent volume across tracks
- Auto-disconnect after 60 seconds of idle
- Python 3.12+
- uv
- FFmpeg installed and available in PATH
git clone https://github.com/Awareness10/shino-beats.git
cd shino-beats
uv syncCreate bot_config.json:
{
"token": "your-discord-bot-token",
"channel_id": 0
}For Spotify support, set environment variables:
export SPOTIFY_CLIENT_ID="your-client-id"
export SPOTIFY_CLIENT_SECRET="your-client-secret"uv run python main.py| Command | Description |
|---|---|
/play <query> |
Play from a URL or search query |
/skip |
Skip the current track |
/stop |
Stop playback and clear the queue |
/pause |
Pause the current track |
/resume |
Resume playback |
/queue |
Show the current queue |
/np |
Show the currently playing track |
uv sync # install deps (including dev)
uv run pytest tests/ -v # run tests
uvx ruff check . # lintLicensed under the MIT License. See the LICENSE file for details.
Made by Awareness10