|
| 1 | +# Forge Environment Variables |
| 2 | +# |
| 3 | +# This file provides a template for the environment variables needed to run the Forge application. |
| 4 | +# Copy this file to .env and fill in the appropriate values for your development environment. |
| 5 | +# Do not commit the .env file to your version control system. |
| 6 | + |
| 7 | +# ----------------------------------------------------------------------------- |
| 8 | +# DATABASE SETTINGS |
| 9 | +# ----------------------------------------------------------------------------- |
| 10 | +# PostgreSQL connection string. |
| 11 | +# Example for local development with Docker: postgresql://forge:forge@localhost:5432/forge |
| 12 | +DATABASE_URL=postgresql://user:password@host:port/dbname |
| 13 | + |
| 14 | +# ----------------------------------------------------------------------------- |
| 15 | +# REDIS CACHE SETTINGS (Optional) |
| 16 | +# ----------------------------------------------------------------------------- |
| 17 | +# URL for your Redis instance. If not provided, an in-memory cache will be used. |
| 18 | +# REDIS_URL=redis://localhost:6379/0 |
| 19 | +# Prefix for all Redis keys to avoid collisions. |
| 20 | +REDIS_PREFIX=forge |
| 21 | + |
| 22 | +# ----------------------------------------------------------------------------- |
| 23 | +# SECURITY & AUTHENTICATION |
| 24 | +# ----------------------------------------------------------------------------- |
| 25 | +# Secret key for signing JWTs. Generate a strong, random key. |
| 26 | +# Use `openssl rand -hex 32` to generate a key. |
| 27 | +SECRET_KEY= |
| 28 | +# Secret key for encrypting sensitive data like provider API keys. |
| 29 | +# Generate with: python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())" |
| 30 | +ENCRYPTION_KEY= |
| 31 | +# Algorithm for JWT signing. |
| 32 | +ALGORITHM=HS256 |
| 33 | +# Access token expiration time in minutes. |
| 34 | +ACCESS_TOKEN_EXPIRE_MINUTES=60 |
| 35 | + |
| 36 | +# ----------------------------------------------------------------------------- |
| 37 | +# CLERK AUTHENTICATION INTEGRATION (OPTIONAL) |
| 38 | +# ----------------------------------------------------------------------------- |
| 39 | +# Your Clerk JWT public key (remove -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY----- headers/footers and newlines). |
| 40 | +CLERK_JWT_PUBLIC_KEY= |
| 41 | +# Your Clerk API key. |
| 42 | +CLERK_API_KEY= |
| 43 | +# Your Clerk API URL. |
| 44 | +CLERK_API_URL=https://api.clerk.dev/v1 |
| 45 | +# Your Clerk webhook signing secret. |
| 46 | +CLERK_WEBHOOK_SECRET= |
| 47 | + |
| 48 | +# ----------------------------------------------------------------------------- |
| 49 | +# APPLICATION & DEVELOPMENT SETTINGS |
| 50 | +# ----------------------------------------------------------------------------- |
| 51 | +# Set to "production" or "development". |
| 52 | +ENVIRONMENT=development |
| 53 | +# Set to "true" to enable debug-level logging. |
| 54 | +FORGE_DEBUG_LOGGING=false |
| 55 | +# Host for the application. |
| 56 | +HOST=0.0.0.0 |
| 57 | +# Port for the. |
| 58 | +PORT=8000 |
| 59 | +# Set to "true" to enable auto-reloading for development. |
| 60 | +RELOAD=false |
| 61 | +# Number of Gunicorn worker processes. |
| 62 | +WORKERS=4 |
| 63 | +# Set to "true" to force the use of in-memory cache, even if REDIS_URL is set. |
| 64 | +# Useful for testing environments. |
| 65 | +FORCE_MEMORY_CACHE=false |
| 66 | +# Set to "true" to enable verbose cache debugging output. |
| 67 | +DEBUG_CACHE=false |
| 68 | +# Your application's domain, used for JWT audience validation. |
| 69 | +APP_DOMAIN=localhost |
0 commit comments