Files
xarticleaudio/.env.example

68 lines
1.4 KiB
Plaintext

# Runtime
NODE_ENV=production
PORT=3000
LOG_LEVEL=info
APP_BASE_URL=https://xartaudio.example.com
ENABLE_DEV_ROUTES=false
ALLOW_IN_MEMORY_STATE_FALLBACK=false
# Better Auth
BETTER_AUTH_SECRET=replace-me
BETTER_AUTH_BASE_PATH=/api/auth
X_OAUTH_CLIENT_ID=replace-me
X_OAUTH_CLIENT_SECRET=replace-me
INTERNAL_API_TOKEN=replace-me
# Convex
CONVEX_DEPLOYMENT_URL=https://your-deployment.convex.cloud
CONVEX_AUTH_TOKEN=
CONVEX_STATE_QUERY=state:getLatestSnapshot
CONVEX_STATE_MUTATION=state:saveSnapshot
# Webhook secrets
X_WEBHOOK_SECRET=replace-me
POLAR_WEBHOOK_SECRET=replace-me
# X API
X_BEARER_TOKEN=replace-me
X_BOT_USER_ID=replace-me
# Polar API
POLAR_ACCESS_TOKEN=replace-me
POLAR_SERVER=production
POLAR_PRODUCT_IDS=prod_123
# Qwen3 TTS
QWEN_TTS_API_KEY=replace-me
QWEN_TTS_BASE_URL=https://dashscope-intl.aliyuncs.com/compatible-mode/v1
QWEN_TTS_MODEL=qwen-tts-latest
QWEN_TTS_VOICE=Cherry
QWEN_TTS_FORMAT=mp3
# MinIO object storage
MINIO_ENDPOINT=minio.example.com
MINIO_PORT=443
MINIO_USE_SSL=true
MINIO_BUCKET=replace-me
MINIO_REGION=us-east-1
MINIO_ACCESS_KEY=replace-me
MINIO_SECRET_KEY=replace-me
MINIO_SIGNED_URL_TTL_SEC=3600
# Credit policy
BASE_CREDITS=1
INCLUDED_CHARS=25000
STEP_CHARS=10000
STEP_CREDITS=1
MAX_CHARS_PER_ARTICLE=120000
# Rate limits (requests per minute)
WEBHOOK_RPM=120
AUTH_RPM=30
ACTION_RPM=60
# Anti-abuse policy
ABUSE_MAX_JOBS_PER_USER_PER_DAY=0
ABUSE_COOLDOWN_SEC=0
ABUSE_DENY_USER_IDS=