Configuration
This guide details all available configuration options for Ygégé.
config.json File
The main configuration file is config.json. It should be placed in the /config folder (Docker) or at the project root (manual installation).
Complete Structure
{
"username": "your_ygg_username",
"password": "your_password",
"bind_ip": "0.0.0.0",
"bind_port": 8715,
"log_level": "debug",
"tmdb_token": null,
"ygg_domain": null,
"turbo_enabled": null
}
Available Options
YGG Authentication
| Parameter | Type | Required | Description |
|---|---|---|---|
username | string | ✅ | YGG Torrent username |
password | string | ✅ | YGG Torrent password |
Warning
Without valid credentials, you will be rate-limited by YGG and the service won't work properly.
Network Configuration
| Parameter | Type | Default | Description |
|---|---|---|---|
bind_ip | string | 0.0.0.0 | Listening IP address |
bind_port | number | 8715 | Server listening port |
Logging
| Parameter | Type | Default | Description |
|---|---|---|---|
log_level | string | info | Log verbosity level |
Available levels:
trace: Maximum details (development)debug: Debug informationinfo: General informationwarn: Warnings onlyerror: Errors only
TMDB/IMDB Metadata
| Parameter | Type | Default | Description |
|---|---|---|---|
tmdb_token | string | null | TMDB API key (optional) |
YGG Domain Configuration
| Parameter | Type | Default | Description |
|---|---|---|---|
ygg_domain | string | null | Custom YGG domain (optional) |
When to use YGG_DOMAIN?
By default, Ygégé automatically detects the current YGG domain via a redirect from ygg.re. If this auto-detection fails (307 errors, "Session expired..."), you can manually specify the domain:
YGG_DOMAIN=www.yggtorrent.org
Environment Variables
All options can also be set via environment variables:
| Variable | config.json equivalent |
|---|---|
YGG_USERNAME | username |
YGG_PASSWORD | password |
BIND_IP | bind_ip |
BIND_PORT | bind_port |
LOG_LEVEL | log_level |
TMDB_TOKEN | tmdb_token |
YGG_DOMAIN | ygg_domain |
TURBO_ENABLED | turbo_enabled |
Priority
Environment variables have priority over config.json file.
Complete Configuration Example
For Docker Compose
services:
ygege:
image: uwucode/ygege:latest
container_name: ygege
restart: unless-stopped
ports:
- "8715:8715"
volumes:
- ./config:/config
environment:
YGG_USERNAME: "my_username"
YGG_PASSWORD: "my_password"
LOG_LEVEL: "info"
TMDB_TOKEN: "your_tmdb_token"
# YGG_DOMAIN: "www.yggtorrent.org" # Optional: force a specific domain
# TURBO_ENABLED: true # Optional : If turbo is enabled, no need to wait 30s between token and torrent download
For config.json File
{
"username": "my_username",
"password": "my_password",
"bind_ip": "0.0.0.0",
"bind_port": 8715,
"log_level": "debug",
"tmdb_token": "your_tmdb_token",
"ygg_domain": null,
"turbo_enabled": true
}
Configuration Validation
To verify your configuration is correct, check the logs at startup:
docker logs ygege
You should see:
[INFO] Configuration loaded successfully
[INFO] Connecting to YGG Torrent...
[INFO] Authentication successful
[INFO] Server started on 0.0.0.0:8715