APP_NAME=HeroKid APP_ENV=local APP_KEY= APP_DEBUG=true # Production canonical domain: https://hero-kid.com # Local development can override this with http://localhost. # All generated canonical, sitemap, schema, and uploaded image URLs use this value. APP_URL=https://hero-kid.com ORDER_DISPLAY_TIMEZONE=Africa/Cairo DISPLAY_TIMEZONE=Africa/Cairo APP_LOCALE=en APP_FALLBACK_LOCALE=en APP_FAKER_LOCALE=en_US APP_MAINTENANCE_DRIVER=file # APP_MAINTENANCE_STORE=database # PHP_CLI_SERVER_WORKERS=4 BCRYPT_ROUNDS=12 LOG_CHANNEL=stack LOG_STACK=single LOG_DEPRECATIONS_CHANNEL=null LOG_LEVEL=debug DB_CONNECTION=sqlite # DB_HOST=127.0.0.1 # DB_PORT=3306 # DB_DATABASE=laravel # DB_USERNAME=root # DB_PASSWORD= SESSION_DRIVER=database SESSION_LIFETIME=120 SESSION_ENCRYPT=false SESSION_PATH=/ SESSION_DOMAIN=null SESSION_SECURE_COOKIE=true BROADCAST_CONNECTION=log # Keep the global default local. Persistent media uses the dedicated settings # below; processing files must always remain on a local-driver disk. FILESYSTEM_DISK=local PRIVATE_MEDIA_DISK=local PUBLIC_MEDIA_DISK=public PROCESSING_DISK=local QUEUE_CONNECTION=database # New-order identity workflows stay off until an approved isolated trial. ORDER_AUTOMATION_ENABLED=false CACHE_STORE=database # CACHE_PREFIX= MEMCACHED_HOST=127.0.0.1 REDIS_CLIENT=phpredis REDIS_HOST=127.0.0.1 REDIS_PASSWORD=null REDIS_PORT=6379 MAIL_MAILER=log MAIL_SCHEME=null MAIL_HOST=127.0.0.1 MAIL_PORT=2525 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_FROM_ADDRESS="hello@example.com" MAIL_FROM_NAME="${APP_NAME}" # AWS production uses the EC2 instance role. Do not configure static keys. AWS_DEFAULT_REGION=eu-central-1 AWS_BUCKET=herokid-prod-media-2026 AWS_USE_PATH_STYLE_ENDPOINT=false META_PIXEL_ID=1011553001490691 META_CONVERSIONS_API_ENABLED=true META_CONVERSIONS_API_ACCESS_TOKEN= META_GRAPH_API_VERSION=v23.0 # Optional while validating events in Meta Events Manager: META_TEST_EVENT_CODE= GOOGLE_ANALYTICS_ID=G-NBQYMB9NT2 MOBILE_OTP_DRIVER=none TWILIO_ACCOUNT_SID= TWILIO_AUTH_TOKEN= TWILIO_FROM_NUMBER= GOOGLE_MOBILE_CLIENT_IDS= APPLE_MOBILE_CLIENT_IDS=com.herokid.app GA4_PROPERTY_ID= GOOGLE_ANALYTICS_CREDENTIALS_PATH= GOOGLE_ANALYTICS_CREDENTIALS_BASE64= ANALYTICS_CACHE_TTL=900 ANALYTICS_BREAKDOWN_CACHE_TTL=1800 ANALYTICS_REALTIME_CACHE_TTL=60 ANALYTICS_REQUEST_TIMEOUT=10 CART_ABANDONED_AFTER_MINUTES=360 CART_ACTIVITY_RETENTION_DAYS=60 PHOTO_UPLOAD_MIN_FILES=2 PHOTO_UPLOAD_MAX_FILES=3 PHOTO_UPLOAD_MAX_SIZE_MB=15 PHOTO_UPLOAD_CONCURRENCY=2 PHOTO_UPLOAD_TEMP_RETENTION_HOURS=24 PHOTO_UPLOAD_MAX_LONG_EDGE=2560 PHOTO_UPLOAD_JPEG_QUALITY=90 HERO_KID_PRODUCTION_STUDIO_ENABLED=true FAL_KEY= FAL_ENABLED=false FAL_DEFAULT_MODEL=fal-ai/flux-kontext/dev FAL_DEFAULT_PREMIUM_MODEL=fal-ai/flux-pro/kontext FAL_REQUEST_TIMEOUT=180 FAL_MAX_RETRIES=2 TELEGRAM_BOT_TOKEN= TELEGRAM_DEFAULT_CHAT_ID= TELEGRAM_REQUEST_TIMEOUT=10 # RoboDesk customer-service integration (disabled until the sandbox contract is accepted) ROBODESK_ENABLED=false ROBODESK_BASE_URL=https://herokid.robodesk.ai ROBODESK_WHATSAPP_NUMBER=01501188884 ROBODESK_INBOUND_SECRET= ROBODESK_OUTBOUND_SECRET= ROBODESK_TIMEOUT_SECONDS=15 ROBODESK_SIGNATURE_TOLERANCE_SECONDS=300 ROBODESK_PAYMENT_PROOF_MAX_MB=10 ROBODESK_INSTAPAY_URL= ROBODESK_CONVERSATIONS_ACCOUNT_KEY=primary # Bosta shipping integration. COD values are operational shipping data only. BOSTA_ENABLED=false BOSTA_BASE_URL=https://app.bosta.co/api/v2 BOSTA_API_KEY= BOSTA_BUSINESS_LOCATION_ID= BOSTA_COUNTRY_ID=60e4482c7cb7d4bc4849c4d5 BOSTA_DEFAULT_PACKAGE_TYPE=Small BOSTA_ALLOW_OPEN_PACKAGE=false BOSTA_WEBHOOK_HEADER=X-Bosta-Webhook-Secret BOSTA_WEBHOOK_SECRET= BOSTA_TIMEOUT=30 BOSTA_CONNECT_TIMEOUT=10 BOSTA_RETRIES=2 BOSTA_PICKUP_SYNC_ENABLED=true BOSTA_PICKUP_SYNC_INTERVAL_MINUTES=5 BOSTA_PICKUP_SYNC_PAGES=5 VITE_APP_NAME="${APP_NAME}"