Skip to main content

Environment Configuration

Complete reference for environment variables used in ZÈYA API.

Application Configuration

APP_NAME=Zeya
APP_ENV=local|production|staging
APP_KEY=base64:...
APP_DEBUG=true|false
APP_URL=http://localhost:8000
APP_TIMEZONE=UTC
APP_LOCALE=en
APP_FALLBACK_LOCALE=en
APP_FAKER_LOCALE=en_US

Database Configuration

MySQL/PostgreSQL

DB_CONNECTION=mysql|pgsql
DB_HOST=127.0.0.1
DB_PORT=3306|5432
DB_DATABASE=zeya
DB_USERNAME=root
DB_PASSWORD=

MongoDB (Optional)

MONGODB_DSN=mongodb://localhost:27017
MONGODB_DATABASE=zeya_products

Cache & Queue Configuration

Redis

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
REDIS_DB=0
REDIS_CACHE_DB=1

CACHE_DRIVER=redis
QUEUE_CONNECTION=redis
SESSION_DRIVER=redis

File Storage

AWS S3

AWS_ACCESS_KEY_ID=your-access-key
AWS_SECRET_ACCESS_KEY=your-secret-key
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=zeya-storage
AWS_USE_PATH_STYLE_ENDPOINT=false

Local Storage

FILESYSTEM_DISK=local

Authentication

JWT

JWT_SECRET=your-jwt-secret-key
JWT_TTL=60
JWT_REFRESH_TTL=20160
JWT_ALGO=HS256

Sanctum

SANCTUM_STATEFUL_DOMAINS=localhost,127.0.0.1,::1

Firebase Configuration

FIREBASE_CREDENTIALS=./zeya-app-b4ad3-firebase-adminsdk-qwmia-be326255c2.json
FIREBASE_DATABASE_URL=https://zeya-app-b4ad3.firebaseio.com
FIREBASE_PROJECT_ID=zeya-app-b4ad3

Push Notifications

Expo

EXPO_ACCESS_TOKEN=your-expo-access-token

SMS/OTP Services

Twilio

TWILIO_SID=your-twilio-sid
TWILIO_AUTH_TOKEN=your-twilio-auth-token
TWILIO_PHONE_NUMBER=+1234567890

Analytics

Google BigQuery

GOOGLE_APPLICATION_CREDENTIALS=./zeya-app-bigQuery-service-key.json
GOOGLE_CLOUD_PROJECT_ID=zeya-project
GOOGLE_CLOUD_DATASET=zeya_analytics

App Store Monitoring

General

RELEASE_MONITOR_ENABLED=true|false
RELEASE_MONITOR_WEBHOOK_URL=https://your.api/endpoint
RELEASE_MONITOR_SCHEDULE="*/30 * * * *"

Apple App Store Connect

APPLE_APP_ID=1234567890
APPLE_ISSUER_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
APPLE_KEY_ID=ABCDEF1234
APPLE_P8_PATH=/absolute/path/to/AuthKey_ABCDEF1234.p8
APPLE_BUNDLE_ID=com.zeya.app

Google Play

GOOGLE_PLAY_PACKAGE=com.zeya.app
GOOGLE_PLAY_SA_JSON=/absolute/path/to/google-service-account.json

Mail Configuration

SMTP

MAIL_MAILER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=your-username
MAIL_PASSWORD=your-password
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=noreply@zeya.app
MAIL_FROM_NAME="${APP_NAME}"

Mailgun

MAIL_MAILER=mailgun
MAILGUN_DOMAIN=mg.zeya.app
MAILGUN_SECRET=your-mailgun-secret
MAILGUN_ENDPOINT=api.mailgun.net

Logging

LOG_CHANNEL=stack
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug|info|warning|error

Broadcasting

BROADCAST_DRIVER=log|pusher|redis
BROADCAST_CONNECTION=default

# Pusher (if using)
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1

Session

SESSION_DRIVER=file|redis|database
SESSION_LIFETIME=120
SESSION_ENCRYPT=false
SESSION_PATH=/
SESSION_DOMAIN=null

CORS

CORS_ALLOWED_ORIGINS=http://localhost:3000,https://app.zeya.app
CORS_ALLOWED_METHODS=GET,POST,PUT,DELETE,OPTIONS
CORS_ALLOWED_HEADERS=Content-Type,Authorization,X-Requested-With

Rate Limiting

RATE_LIMIT_ENABLED=true
RATE_LIMIT_MAX_ATTEMPTS=60
RATE_LIMIT_DECAY_MINUTES=1

Service API

SERVICE_API_ENABLED=true
SERVICE_API_TOKEN=your-service-api-token

Development Tools

TELESCOPE_ENABLED=false
DEBUGBAR_ENABLED=false

Environment-Specific Examples

Local Development

APP_ENV=local
APP_DEBUG=true
APP_URL=http://localhost:8000
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
CACHE_DRIVER=file
QUEUE_CONNECTION=sync

Staging

APP_ENV=staging
APP_DEBUG=true
APP_URL=https://staging-api.zeya.app
DB_CONNECTION=mysql
DB_HOST=staging-db-host
CACHE_DRIVER=redis
QUEUE_CONNECTION=redis

Production

APP_ENV=production
APP_DEBUG=false
APP_URL=https://api.zeya.app
DB_CONNECTION=mysql
DB_HOST=production-db-host
CACHE_DRIVER=redis
QUEUE_CONNECTION=redis

Security Notes

  • Never commit .env file to version control
  • Use strong passwords for production
  • Rotate secrets regularly
  • Use environment-specific configurations
  • Store sensitive credentials securely