Files
AudiOhm/backend/.env.example
T
root a89c7894cf Initial commit: AudiOhm - Alternative Spotify avec streaming YouTube
Backend:
- FastAPI avec PostgreSQL et Redis
- Authentification JWT complète
- API REST pour musique, playlists, recherche
- Streaming audio via yt-dlp
- SQLAlchemy 2.0 async

Frontend:
- Flutter avec thème néon cyberpunk
- State management Riverpod
- Layout adaptatif desktop/mobile
- Lecteur audio avec mini-player

Infrastructure:
- Docker Compose (PostgreSQL + Redis)
- Scripts d'installation automatisés
- Scripts de build pour exécutables

Fichiers ajoutés:
- BUILD_CLIENT_*.bat/sh: Scripts de compilation
- BUILD_CLIENT_README.md: Documentation compilation
- CHECK_FLUTTER.sh: Vérificateur d'environnement
- requirements.txt mis à jour pour Python 3.13
- Modèles SQLAlchemy corrigés (metadata -> extra_metadata)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-18 20:08:36 +00:00

115 lines
4.1 KiB
Bash

# =============================================================================
# Spotify Le 2 - Environment Variables
# =============================================================================
# Copy this file to .env and fill in your values.
# DO NOT commit .env to version control.
# -----------------------------------------------------------------------------
# Application
# -----------------------------------------------------------------------------
APP_NAME="Spotify Le 2"
APP_VERSION="0.1.0"
DEBUG=true
API_V1_PREFIX="/api/v1"
# Server
HOST=0.0.0.0
PORT=8000
# CORS - Comma-separated list of allowed origins
BACKEND_CORS_ORIGINS=http://localhost:3000,http://localhost:8000
# -----------------------------------------------------------------------------
# Database (PostgreSQL)
# -----------------------------------------------------------------------------
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_USER=spotify
POSTGRES_PASSWORD=change_this_password_in_production
POSTGRES_DB=spotify_le_2
# -----------------------------------------------------------------------------
# Redis
# -----------------------------------------------------------------------------
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
REDIS_DB=0
# Alternative: Full Redis URL (overrides above if set)
# REDIS_URL=redis://:password@localhost:6379/0
# -----------------------------------------------------------------------------
# JWT Security
# -----------------------------------------------------------------------------
# IMPORTANT: Change this to a strong random string in production!
SECRET_KEY=change-this-secret-key-in-production-use-openssl-rand-hex-32
ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=15
REFRESH_TOKEN_EXPIRE_DAYS=7
# Password hashing
PASSWORD_HASH_ALGORITHM=bcrypt
PASSWORD_HASH_ROUNDS=12
# -----------------------------------------------------------------------------
# Storage
# -----------------------------------------------------------------------------
STORAGE_PATH=./storage
AUDIO_CACHE_PATH=./storage/audio/cache
AUDIO_PERMANENT_PATH=./storage/audio/permanent
THUMBNAILS_PATH=./storage/thumbnails
MAX_CACHE_SIZE_GB=50
# -----------------------------------------------------------------------------
# YouTube
# -----------------------------------------------------------------------------
# Get your API key from: https://console.cloud.google.com/
YOUTUBE_API_KEY=
YTDLP_PATH=yt-dlp
# -----------------------------------------------------------------------------
# Spotify (for playlist import)
# -----------------------------------------------------------------------------
# Get your credentials from: https://developer.spotify.com/dashboard
SPOTIFY_CLIENT_ID=
SPOTIFY_CLIENT_SECRET=
SPOTIFY_REDIRECT_URI=http://localhost:8000/api/v1/import/spotify/callback
# -----------------------------------------------------------------------------
# Last.fm (for metadata and recommendations)
# -----------------------------------------------------------------------------
# Get your API key from: https://www.last.fm/api/account/create
LASTFM_API_KEY=
LASTFM_SECRET=
# -----------------------------------------------------------------------------
# Rate Limiting
# -----------------------------------------------------------------------------
RATE_LIMIT_PER_MINUTE=100
RATE_LIMIT_BURST=200
# -----------------------------------------------------------------------------
# File Upload
# -----------------------------------------------------------------------------
MAX_FILE_SIZE_MB=100
ALLOWED_AUDIO_TYPES=audio/mpeg,audio/ogg,audio/wav,audio/flac
# -----------------------------------------------------------------------------
# Audio Processing
# -----------------------------------------------------------------------------
FFMPEG_PATH=ffmpeg
AUDIO_QUALITY=high
BITRATE=320
# -----------------------------------------------------------------------------
# Logging
# -----------------------------------------------------------------------------
LOG_LEVEL=INFO
LOG_FILE_PATH=./logs
# -----------------------------------------------------------------------------
# Pagination
# -----------------------------------------------------------------------------
DEFAULT_PAGE_SIZE=20
MAX_PAGE_SIZE=100