A Discord music bot for playing music with friends. Built with TypeScript, Discord.js v14, and Lavalink v4.
- Node.js 22+
- Docker & Docker Compose
- A Discord bot token (Discord Developer Portal)
git clone https://github.com/Angstboksen/JuanitaMusic.git
cd JuanitaMusic
npm installcp .env.example .env
# Edit .env with your BOT_TOKEN and optionally DEV_GUILD_IDdocker compose up -d lavalink postgresnpm run db:pushnpm run devRun everything in Docker:
docker compose up -d| Command | Description |
|---|---|
/play <song> |
Play a song from a search query or URL |
/first <song> |
Add a song to the front of the queue |
/skip |
Skip the current song |
/back |
Play the previous song |
/pause |
Toggle pause/resume |
/shuffle |
Shuffle the queue |
/jump <position> |
Jump to a position in the queue |
/seek <seconds> |
Seek to a time in the current song |
/remove <position> |
Remove a song from the queue |
/clear |
Clear the queue |
/queue |
Show the live queue embed |
/kys |
Disconnect the bot |
/ping |
Check bot latency |
/help |
List all commands |
/language <lang> |
Change bot language (en/no/molde) |
JuanitaMusic supports three languages per server:
- en — English
- no — Norwegian
- molde — Molde dialect (the bot's original personality)
- TypeScript + Discord.js v14
- Lavalink v4 via Shoukaku + Kazagumo
- PostgreSQL via Drizzle ORM
- Docker Compose for Lavalink + Postgres + Bot