Skip to content

TheTeamVivek/YukkiMusic

Repository files navigation

🎧 YukkiMusic

⚡ A blazing-fast, reliable, and feature-packed Telegram bot for streaming music in group voice chats — built with Go.

GitHub Stars GitHub Forks Go Version Release Version Support Group


✨ Key Features

  • 🚀 High Performance: Optimized Go-based engine for ultra-low latency.
  • 🎼 Smart Provider System: Supports YouTube, Telegram Files, and custom APIs.
  • 🔄 Intelligent Fallback: Automatically switches sources if one fails.
  • 🌍 Localization: Robust multi-language support (YAML-based).
  • 🛠 Admin Suite: Speed control, seeking, looping, and advanced queueing.

🚀 Quick Start

☁️ One-Click Deploy

Deploy to Heroku

💻 Manual Installation


# 1. Clone & Enter
git clone https://github.com/TheTeamVivek/YukkiMusic.git && cd YukkiMusic

# 2. Setup Environment bash install.sh cp sample.env .env # Edit your API_ID, TOKEN, etc.
# 3. Tidy & Run go mod tidy go run ./cmd/app

🐳 Docker Deployment


# 1. Clone & Enter
git clone https://github.com/TheTeamVivek/YukkiMusic.git && cd YukkiMusic

# 2. Prepare environment cp sample.env .env # Fill required values: API_ID, API_HASH, TOKEN, MONGO_DB_URI, STRING_SESSIONS
# 3. Build and start in background docker compose up -d --build

📜 Logs & Useful Container Commands


# Follow live logs
docker compose logs -f yukkimusic

# Show last 200 lines docker compose logs --tail=200 yukkimusic
# Check running state docker compose ps
# Restart service docker compose restart yukkimusic
# Stop service (keeps containers, network, and image) docker compose stop yukkimusic
# Start again after stop docker compose start yukkimusic
# Remove stopped container only (keeps image and network) docker compose rm -f yukkimusic
# Full cleanup (removes containers + network) docker compose down
# Update after pulling latest code git pull && docker compose up -d --build

⚙️ Configuration

All settings are managed via environment variables. See the Configuration Guide for full details.

Variable Description
API_ID / API_HASH Obtained from my.telegram.org
TOKEN Bot token from @BotFather
MONGO_DB_URI MongoDB Atlas or local connection string
STRING_SESSIONS Assistant account sessions (Pyrogram/Telethon/Gogram)

🎮 Commands Reference

🎵 Playback & Queue

  • /play <query> — Play from YouTube/Telegram
  • /fplay <query> — Force play (skips current track)
  • /pause | /resume — Toggle playback state
  • /queue — View the upcoming list
  • /seek <seconds> — Jump to a specific time

🛡️ Admin & Owner

  • /addsudo | /delsudo — Manage authorized controllers
  • /stats — View system and database metrics
  • /broadcast — Send a message to all active chats
  • /maintenance — Toggle global maintenance mode

🏗️ Project Structure

YukkiMusic/
├── cmd/app/            # Main entry point
├── docker-compose.yml  # Container deployment recipe
├── internal/config/    # Configuration & Environment loader
├── internal/
│   ├── core/           # Bot initialization & playback logic
│   ├── database/       # MongoDB schemas & operations
│   ├── locales/        # YAML-based translation files
│   ├── modules/        # Command handlers (play, skip, etc.)
│   ├── platforms/      # Source providers (YouTube, TG, etc.)
│   └── utils/          # Global helper functions
└── go.mod              # Dependency management

🤝 Contributing & Support


Made with ❤️ by Vivek Kumar
Licensed under the GNU General Public License v3.0

Packages

 
 
 

Contributors

Languages