# =========================================== # XPEDITIS Backend Environment Configuration # Copy this file to .env and fill in your values # =========================================== # =========================================== # SERVER CONFIGURATION # =========================================== SERVER_PORT=8080 # =========================================== # DATABASE CONFIGURATION # =========================================== # Development Database (H2) - No changes needed SPRING_H2_CONSOLE_ENABLED=false SPRING_H2_DATASOURCE_URL=jdbc:h2:mem:xpeditis;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE SPRING_H2_DATASOURCE_DRIVER_CLASS_NAME=org.h2.Driver SPRING_H2_DATASOURCE_USERNAME=sa SPRING_H2_DATASOURCE_PASSWORD= # Production Database (MySQL) - FILL IN YOUR VALUES SPRING_DATASOURCE_URL=jdbc:mysql://your-mysql-host:3306/xpeditis?useSSL=false&serverTimezone=UTC SPRING_DATASOURCE_USERNAME=your_mysql_username SPRING_DATASOURCE_PASSWORD=your_mysql_password SPRING_DATASOURCE_DRIVER_CLASS_NAME=com.mysql.cj.jdbc.Driver # =========================================== # JPA/HIBERNATE CONFIGURATION # =========================================== SPRING_JPA_SHOW_SQL=false SPRING_JPA_FORMAT_SQL=false SPRING_JPA_DATABASE_PLATFORM_H2=org.hibernate.dialect.H2Dialect SPRING_JPA_DATABASE_PLATFORM_MYSQL=org.hibernate.dialect.MySQLDialect # Development SPRING_JPA_HIBERNATE_DDL_AUTO_DEV=create-drop SPRING_JPA_DEFER_DATASOURCE_INITIALIZATION_DEV=true # Production SPRING_JPA_HIBERNATE_DDL_AUTO_PROD=validate SPRING_JPA_DEFER_DATASOURCE_INITIALIZATION_PROD=false # =========================================== # FLYWAY CONFIGURATION # =========================================== # Development SPRING_FLYWAY_ENABLED_DEV=false # Production SPRING_FLYWAY_ENABLED_PROD=true SPRING_FLYWAY_LOCATIONS=classpath:db/migration/structure,classpath:db/migration/data SPRING_FLYWAY_VALIDATE_ON_MIGRATE=true SPRING_FLYWAY_BASELINE_ON_MIGRATE=true SPRING_FLYWAY_BASELINE_VERSION=0 SPRING_FLYWAY_DEFAULT_SCHEMA=leblr # =========================================== # EMAIL CONFIGURATION # =========================================== # Development (Mailtrap) - FILL IN YOUR MAILTRAP CREDENTIALS SPRING_MAIL_HOST_DEV=sandbox.smtp.mailtrap.io SPRING_MAIL_PORT_DEV=2525 SPRING_MAIL_USERNAME_DEV=your_mailtrap_username SPRING_MAIL_PASSWORD_DEV=your_mailtrap_password APPLICATION_EMAIL_FROM_DEV=noreply@xpeditis.local # Production (OVH or your SMTP provider) - FILL IN YOUR VALUES SPRING_MAIL_PROTOCOL_PROD=smtp SPRING_MAIL_HOST_PROD=your-smtp-host SPRING_MAIL_PORT_PROD=587 SPRING_MAIL_USERNAME_PROD=your-email@domain.com SPRING_MAIL_PASSWORD_PROD=your_email_password APPLICATION_EMAIL_FROM_PROD=your-email@domain.com # Email Properties SPRING_MAIL_SMTP_AUTH=true SPRING_MAIL_SMTP_STARTTLS_ENABLE=true SPRING_MAIL_SMTP_SSL_TRUST=* SPRING_MAIL_SMTP_CONNECTION_TIMEOUT=5000 SPRING_MAIL_SMTP_TIMEOUT=3000 SPRING_MAIL_SMTP_WRITE_TIMEOUT=5000 # =========================================== # OAUTH2 / GOOGLE CONFIGURATION # =========================================== # FILL IN YOUR GOOGLE OAUTH2 CREDENTIALS GOOGLE_CLIENT_ID=your-google-client-id-from-console GOOGLE_CLIENT_SECRET=your-google-client-secret-from-console # Development OAUTH2_REDIRECT_URI_DEV=http://localhost:8080/login/oauth2/code/google # Production - FILL IN YOUR DOMAIN OAUTH2_REDIRECT_URI_PROD=https://your-domain.com/login/oauth2/code/google # Google OAuth2 URLs (standard - don't change) GOOGLE_AUTHORIZATION_URI=https://accounts.google.com/o/oauth2/v2/auth GOOGLE_TOKEN_URI=https://oauth2.googleapis.com/token GOOGLE_USER_INFO_URI=https://www.googleapis.com/oauth2/v2/userinfo GOOGLE_USER_NAME_ATTRIBUTE=sub GOOGLE_OAUTH2_SCOPE=openid,email,profile # =========================================== # SECURITY / JWT CONFIGURATION # =========================================== # GENERATE A SECURE SECRET KEY FOR PRODUCTION JWT_SECRET_KEY=your-very-secure-jwt-secret-key-here-make-it-long-and-random JWT_EXPIRATION=86400000 JWT_REFRESH_TOKEN_EXPIRATION=604800000 # CSRF Configuration APPLICATION_CSRF_ENABLED_DEV=false APPLICATION_CSRF_ENABLED_PROD=true # =========================================== # APPLICATION SPECIFIC CONFIGURATION # =========================================== # OAuth2 Settings APPLICATION_OAUTH2_GOOGLE_ENABLED=true # License Configuration APPLICATION_LICENSE_TRIAL_DURATION_DAYS=30 APPLICATION_LICENSE_TRIAL_MAX_USERS=5 APPLICATION_LICENSE_BASIC_MAX_USERS=50 APPLICATION_LICENSE_PREMIUM_MAX_USERS=200 APPLICATION_LICENSE_ENTERPRISE_MAX_USERS=1000 # =========================================== # FILE UPLOAD CONFIGURATION # =========================================== FILE_UPLOAD_DIR=/upload SPRING_SERVLET_MULTIPART_ENABLED=true SPRING_SERVLET_MULTIPART_MAX_FILE_SIZE=50MB SPRING_SERVLET_MULTIPART_MAX_REQUEST_SIZE=50MB # =========================================== # APPLICATION METADATA # =========================================== SPRING_APPLICATION_NAME=XPEDITIS Backend SPRING_APPLICATION_VERSION=0.0.1-SNAPSHOT # =========================================== # ACTIVE PROFILES # =========================================== # Use 'dev' for development, 'prod' for production SPRING_PROFILES_ACTIVE=dev # =========================================== # LOGGING CONFIGURATION # =========================================== LOGGING_LEVEL_ROOT=INFO LOGGING_LEVEL_SPRINGFRAMEWORK_BOOT_AUTOCONFIGURE=OFF LOGGING_LEVEL_COMMONS_REQUEST_LOGGING_FILTER=INFO LOGGING_LEVEL_HIBERNATE_SQL=OFF LOGGING_LEVEL_HIBERNATE_TYPE=OFF # =========================================== # DEVELOPMENT ONLY # =========================================== # Uncomment for development debugging # SPRING_JPA_SHOW_SQL=true # SPRING_JPA_FORMAT_SQL=true # LOGGING_LEVEL_ROOT=DEBUG