rawon.jpg

rawon

Getting Started

Get Rawon up and running in minutes with our step-by-step guide.

✨ Features

🎮 Interaction support (slash commands and buttons)

📺 Request channel feature for seamless music experience

🚀 Production-ready, no coding required

⚙️ Configurable and easy to use

🎵 Basic music commands (play, pause, skip, queue, etc.)

🌍 Multi-language support (12 languages)

🔄 Multi-cookie rotation for uninterrupted playback

⚡ Smart audio pre-caching for smoother playback

🎶 Support for multiple music platforms (video sites, Spotify, SoundCloud)

📋 Full playlist support (including large 100+ songs playlists)

📋 Requirements

  • Node.js version 22.12.0 or higher

  • Discord Bot Token (get from Discord Developer Portal)

  • Optional: Spotify API credentials for Spotify support

💻 Standard Setup (Node.js)

  1. Download and install Node.js version 22.12.0 or higher

  2. Clone or download this repository

  3. Copy .env_example to .env and fill in the required values (at minimum: DISCORD_TOKEN)

  4. Install dependencies: pnpm install

  5. Build the project: pnpm run build

  6. Start the bot: pnpm start

(Optional) After the bot is online, set up a dedicated music channel:

<prefix>requestchannel <#channel> # Example: !requestchannel #music-requests

🐳 Docker Setup (Recommended)

Using Docker Compose

  1. Create a .env file with your configuration (copy from .env_example)

  2. Create a docker-compose.yaml file (see example below)

  3. Start the bot: docker compose up -d

  4. View logs: docker logs -f rawon-bot

1 2 3 4 5 6 7 8 9 10 11 services: rawon: image: ghcr.io/stegripe/rawon:latest container_name: rawon-bot restart: unless-stopped env_file: .env volumes: - rawon:/app/cache volumes: rawon:

Using Docker Run

docker run -d \ --name rawon-bot \ --env-file .env \ -v rawon:/app/cache \ --restart unless-stopped \ ghcr.io/stegripe/rawon:latest

📁 Volume Information

The /app/cache volume stores:

  • yt-dlp binary for audio streaming

  • data.json for persistent settings (request channels, player states)

  • Cached audio files (if audio caching is enabled)

  • Cookie files for video platform authentication

🚂 Railway Deployment

Railway provides $5 free credits monthly. Your bot will stay online 24/7 as long as usage stays under $5.

⚠️ IMPORTANT: Read Disclaimers before deploying to Railway.

🍪 Quick Start: Cookies Setup

If you're hosting on cloud providers (AWS, GCP, Azure, Railway, etc.), you may get "Sign in to confirm you're not a bot" errors. Fix it easily with the cookies command:

  1. Export cookies from your browser (see Cookies Setup guide)

  2. In Discord, type: !cookies add 1

  3. Attach your cookies.txt file to the message

  4. Done! The cookie takes effect immediately

💡 You can add multiple cookies for redundancy. When one fails, Rawon automatically switches to the next one!