137 lines
No EOL
4.5 KiB
Text
137 lines
No EOL
4.5 KiB
Text
# ===========================================
|
|
# AeThex Connect - Environment Variables
|
|
# ===========================================
|
|
|
|
# --------------------------------------------
|
|
# Database Configuration
|
|
# --------------------------------------------
|
|
DATABASE_URL=postgresql://user:password@localhost:5432/aethex_connect
|
|
SUPABASE_URL=https://your-project.supabase.co
|
|
SUPABASE_ANON_KEY=your-anon-key
|
|
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key
|
|
|
|
# --------------------------------------------
|
|
# Server Configuration
|
|
# --------------------------------------------
|
|
PORT=5000
|
|
NODE_ENV=development
|
|
FRONTEND_URL=http://localhost:5173
|
|
|
|
# --------------------------------------------
|
|
# JWT Authentication
|
|
# --------------------------------------------
|
|
JWT_SECRET=your-super-secret-jwt-key-change-this-in-production
|
|
JWT_EXPIRES_IN=7d
|
|
|
|
# --------------------------------------------
|
|
# Stripe Payment Processing (Phase 6)
|
|
# --------------------------------------------
|
|
# Get keys from: https://dashboard.stripe.com/apikeys
|
|
STRIPE_SECRET_KEY=sk_test_... # or sk_live_... for production
|
|
STRIPE_PUBLISHABLE_KEY=pk_test_... # or pk_live_... for production
|
|
|
|
# Webhook secret - from Stripe Dashboard -> Developers -> Webhooks
|
|
STRIPE_WEBHOOK_SECRET=whsec_...
|
|
|
|
# Price IDs - Create in Stripe Dashboard -> Products
|
|
STRIPE_PREMIUM_YEARLY_PRICE_ID=price_premium_yearly
|
|
STRIPE_PREMIUM_MONTHLY_PRICE_ID=price_premium_monthly
|
|
STRIPE_ENTERPRISE_PRICE_ID=price_enterprise
|
|
|
|
# --------------------------------------------
|
|
# Blockchain Configuration (Phase 6)
|
|
# --------------------------------------------
|
|
# Polygon RPC endpoint - get from Alchemy/Infura
|
|
POLYGON_RPC_URL=https://polygon-mainnet.g.alchemy.com/v2/YOUR_API_KEY
|
|
RPC_ENDPOINT=https://polygon-mainnet.infura.io/v3/YOUR_INFURA_KEY
|
|
|
|
# Freename .aethex domain registry contract
|
|
FREENAME_REGISTRY_ADDRESS=0x... # Contract address on Polygon
|
|
|
|
# Hot wallet for automated NFT minting
|
|
DOMAIN_MINTER_PRIVATE_KEY=0x... # KEEP SECRET - use hardware wallet in production
|
|
|
|
# --------------------------------------------
|
|
# GameForge Integration (Phase 3)
|
|
# --------------------------------------------
|
|
GAMEFORGE_API_URL=https://gameforge.com/api
|
|
GAMEFORGE_CLIENT_ID=your-client-id
|
|
GAMEFORGE_CLIENT_SECRET=your-client-secret
|
|
GAMEFORGE_WEBHOOK_SECRET=your-webhook-secret
|
|
|
|
# --------------------------------------------
|
|
# Nexus Engine (Phase 5)
|
|
# --------------------------------------------
|
|
NEXUS_API_KEY=your-nexus-api-key
|
|
NEXUS_ENGINE_URL=https://nexus-engine.example.com
|
|
|
|
# --------------------------------------------
|
|
# WebSocket/Socket.IO (Phase 2, 4)
|
|
# --------------------------------------------
|
|
SOCKET_IO_CORS_ORIGIN=http://localhost:5173
|
|
SOCKET_IO_PATH=/socket.io
|
|
|
|
# --------------------------------------------
|
|
# WebRTC/TURN Configuration (Phase 4)
|
|
# --------------------------------------------
|
|
STUN_SERVER=stun:stun.l.google.com:19302
|
|
TURN_SERVER=turn:your-turn-server.com:3478
|
|
TURN_SERVER_HOST=turn.example.com
|
|
TURN_SERVER_PORT=3478
|
|
TURN_USERNAME=turn-user
|
|
TURN_CREDENTIAL=turn-password
|
|
TURN_SECRET=your-turn-secret-key
|
|
TURN_TTL=86400
|
|
|
|
# --------------------------------------------
|
|
# File Storage (Phase 2)
|
|
# --------------------------------------------
|
|
MAX_FILE_SIZE_MB=100
|
|
STORAGE_PATH=./uploads
|
|
|
|
# --------------------------------------------
|
|
# Platform Settings (Phase 6)
|
|
# --------------------------------------------
|
|
# Marketplace fee percentage (10 = 10%)
|
|
PLATFORM_FEE_PERCENTAGE=10
|
|
|
|
# Feature limits - Free tier defaults
|
|
FREE_MAX_FRIENDS=5
|
|
FREE_STORAGE_GB=0.1
|
|
|
|
# Premium tier defaults
|
|
PREMIUM_STORAGE_GB=10
|
|
|
|
# Enterprise tier defaults
|
|
ENTERPRISE_STORAGE_GB=-1 # -1 = unlimited
|
|
|
|
# --------------------------------------------
|
|
# Rate Limiting
|
|
# --------------------------------------------
|
|
RATE_LIMIT_WINDOW_MS=900000 # 15 minutes
|
|
RATE_LIMIT_MAX_REQUESTS=100
|
|
RATE_LIMIT_PREMIUM_MAX_REQUESTS=1000
|
|
|
|
# --------------------------------------------
|
|
# Security
|
|
# --------------------------------------------
|
|
# CORS allowed origins (comma-separated)
|
|
CORS_ORIGINS=http://localhost:5173,http://localhost:3000
|
|
|
|
# Session secret for Express sessions
|
|
SESSION_SECRET=your-session-secret-change-this
|
|
|
|
# --------------------------------------------
|
|
# Production Checklist
|
|
# --------------------------------------------
|
|
# Before deploying to production:
|
|
# [ ] Change all secrets and keys
|
|
# [ ] Set NODE_ENV=production
|
|
# [ ] Use Stripe live keys (sk_live_, pk_live_)
|
|
# [ ] Set up production webhook endpoint
|
|
# [ ] Enable HTTPS/SSL
|
|
# [ ] Configure CORS for production domain
|
|
# [ ] Set up database backups
|
|
# [ ] Set strong JWT_SECRET
|
|
# [ ] Secure DOMAIN_MINTER_PRIVATE_KEY
|
|
# [ ] Test Stripe webhook with live endpoint |