Cybersecurity-Projects/PROJECTS/advanced/encrypted-p2p-chat/.env.example

64 lines
1.4 KiB
Plaintext

# Application
ENV=development
DEBUG=true
APP_NAME=encrypted-p2p-chat
SECRET_KEY=your-secret-key-here-change-in-production
# Docker Host Ports (change these if you have conflicts)
POSTGRES_HOST_PORT=5432
SURREAL_HOST_PORT=8001
REDIS_HOST_PORT=6379
BACKEND_HOST_PORT=8000
NGINX_HTTP_PORT=80
NGINX_HTTPS_PORT=443
# PostgreSQL (for auth data)
POSTGRES_HOST=postgres
POSTGRES_PORT=5432
POSTGRES_DB=chat_auth
POSTGRES_USER=chat_user
POSTGRES_PASSWORD=change-this-password
DATABASE_URL=postgresql+asyncpg://chat_user:change-this-password@postgres:5432/chat_auth
DB_POOL_SIZE=20
DB_MAX_OVERFLOW=40
# SurrealDB (for real-time chat data)
SURREAL_HOST=surrealdb
SURREAL_PORT=8000
SURREAL_USER=root
SURREAL_PASSWORD=change-this-password
SURREAL_NAMESPACE=chat
SURREAL_DATABASE=production
SURREAL_URL=ws://surrealdb:8000
# Redis (for caching and rate limiting)
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD=
REDIS_URL=redis://redis:6379
# WebAuthn / Passkeys
RP_ID=localhost
RP_NAME="Encrypted P2P Chat"
RP_ORIGIN=http://localhost
# Frontend (Vite requires VITE_ prefix)
VITE_API_URL=http://localhost:8000
VITE_WS_URL=ws://localhost:8000
VITE_RP_ID=localhost
# CORS
CORS_ORIGINS='["http://localhost:3000","http://localhost:5173"]'
# WebSocket
WS_HEARTBEAT_INTERVAL=30
WS_MAX_CONNECTIONS_PER_USER=5
# Encryption
KEY_ROTATION_DAYS=90
MAX_SKIPPED_MESSAGE_KEYS=1000
# Rate Limiting
RATE_LIMIT_MESSAGES_PER_MINUTE=60
RATE_LIMIT_AUTH_ATTEMPTS=5