# ============================================================================= # Formeleon - Multi-tenant Form Generator # Author: Björn Runden # File: .env.example # Description: Environment configuration template. Copy to .env and customize. # ============================================================================= # ============================================================================= # APPLICATION SETTINGS # ============================================================================= # Flask Environment: development, production, testing FLASK_ENV=development # Secret Key for Flask session management # Generate with: python -c "import secrets; print(secrets.token_hex(32))" SECRET_KEY=your-secret-key-change-in-production # Enable/Disable Debug Mode FLASK_DEBUG=true # Development Mode - enables fake auth and mocking DEV_MODE=true APP_NAME=formeleon_dev # Application port (default: 5000) # PORT=5000 # ============================================================================= # DATABASE SETTINGS # ============================================================================= # SQLite (default for development) # SQLALCHEMY_DATABASE_URI=sqlite:///instance/formeleon.db # PostgreSQL # SQLALCHEMY_DATABASE_URI=postgresql://username:password@localhost/formeleon # MySQL # SQLALCHEMY_DATABASE_URI=mysql+pymysql://username:password@localhost/formeleon # Enable SQL query logging SQLALCHEMY_ECHO=false # ============================================================================= # ZITADEL OIDC SETTINGS # ============================================================================= # Zitadel Issuer URL (OIDC Provider) # Example: https://your-zitadel-instance.zitadel.cloud ZITADEL_ISSUER= # OIDC Client ID from Zitadel ZITADEL_CLIENT_ID= # OIDC Client Secret from Zitadel ZITADEL_CLIENT_SECRET= # Redirect URI for OIDC callback # Default: http://localhost:5000/auth/callback ZITADEL_REDIRECT_URI=http://localhost:5000/auth/callback # OIDC Scopes (comma-separated) # ZITADEL_SCOPES=openid,profile,email # ============================================================================= # RECAPTCHA SETTINGS # ============================================================================= # Google reCAPTCHA v3 Site Key (for client-side) RECAPTCHA_SITE_KEY= # Google reCAPTCHA v3 Secret Key (for server-side validation) RECAPTCHA_SECRET_KEY= # Minimum score threshold (0.0 - 1.0, default: 0.5) RECAPTCHA_THRESHOLD=0.5 # Mock score for development mode (default: 0.9) MOCK_RECAPTCHA_SCORE=0.9 # ============================================================================= # DEVELOPMENT USER SETTINGS # ============================================================================= # Dev Mode User Role (admin, tenant_admin, user, viewer) DEV_USER_ROLE=admin # Dev Mode Tenant ID DEV_TENANT_ID=tenant_dev_123 # Dev Mode User Name DEV_USER_NAME=Dev Admin # Dev Mode User Email DEV_USER_EMAIL=dev@formeleon.local # ============================================================================= # CORS SETTINGS # ============================================================================= # Enable CORS (default: true) ENABLE_CORS=true # Allowed Origins (comma-separated, default: *) ALLOWED_ORIGINS=* # ============================================================================= # SESSION SETTINGS # ============================================================================= # Session Cookie Secure (HTTPS only, default: false for development) SESSION_COOKIE_SECURE=false # Session Cookie SameSite (Lax, Strict, None) SESSION_COOKIE_SAMESITE=Lax # ============================================================================= # FILE UPLOAD SETTINGS # ============================================================================= # Maximum upload size in bytes (default: 16MB = 16 * 1024 * 1024) MAX_CONTENT_LENGTH=16777216 # Upload folder UPLOAD_FOLDER=/tmp/formeleon_uploads # Allowed file extensions (comma-separated) # ALLOWED_EXTENSIONS=png,jpg,jpeg,gif,pdf,txt # ============================================================================= # EMAIL SETTINGS (for notifications) # ============================================================================= # SMTP Server # SMTP_SERVER=localhost # SMTP_PORT=587 # SMTP_USERNAME= # SMTP_PASSWORD= # SMTP_USE_TLS=true # EMAIL_FROM=formeleon@yourdomain.com # ============================================================================= # LOGGING SETTINGS # ============================================================================= # Log Level: DEBUG, INFO, WARNING, ERROR, CRITICAL # LOG_LEVEL=INFO # ============================================================================= # PRODUCTION SETTINGS # ============================================================================= # In production, set these values: # FLASK_ENV=production # FLASK_DEBUG=false # DEV_MODE=false # SESSION_COOKIE_SECURE=true # SESSION_COOKIE_SAMESITE=Strict # SQLALCHEMY_DATABASE_URI=your-production-database-uri