import dotenv from 'dotenv' dotenv.config() class config { // Server configuration static ENV: string = process.env.ENV || 'development' static HOST: string = process.env.HOST || '0.0.0.0' static PORT: number = process.env.PORT ? parseInt(process.env.PORT) : 6969 static JWT_SECRET: string = process.env.JWT_SECRET || 'secret' static CLIENT_URL: string = process.env.CLIENT_URL ? process.env.CLIENT_URL : 'https://noxious.gg' // Database configuration static REDIS_URL: string = process.env.REDIS_URL || 'redis://@127.0.0.1:6379/4' static DB_HOST: string = process.env.DB_HOST || 'localhost' static DB_USER: string = process.env.DB_USER || 'root' static DB_PASS: string = process.env.DB_PASS || '' static DB_PORT: number = process.env.DB_PORT ? parseInt(process.env.DB_PORT) : 3306 static DB_NAME: string = process.env.DB_NAME || 'game' // Game configuration static ALLOW_DIAGONAL_MOVEMENT: boolean = process.env.ALLOW_DIAGONAL_MOVEMENT === 'true' // Default character create values static DEFAULT_CHARACTER_ZONE: number = parseInt(process.env.DEFAULT_CHARACTER_ZONE || '1') static DEFAULT_CHARACTER_X: number = parseInt(process.env.DEFAULT_CHARACTER_POS_X || '0') static DEFAULT_CHARACTER_Y: number = parseInt(process.env.DEFAULT_CHARACTER_POS_Y || '0') // Email configuration static SMTP_HOST: string = process.env.SMTP_HOST || 'my.directonline.io' static SMTP_PORT: number = process.env.SMTP_PORT ? parseInt(process.env.SMTP_PORT) : 587 static SMTP_USER: string = process.env.SMTP_USER || 'no-reply@noxious.gg' static SMTP_PASSWORD: string = process.env.SMTP_PASSWORD || 'password' } export default config