import dotenv from 'dotenv'; import path from 'path'; dotenv.config({ path: path.resolve(__dirname, '../../.env') }); export const config = { port: parseInt(process.env.PORT || '3000', 10), nodeEnv: process.env.NODE_ENV || 'development', encryptionKey: process.env.ENCRYPTION_KEY || '', jwtSecret: process.env.JWT_SECRET || 'dev-jwt-secret-change-in-production', jwtExpiresIn: process.env.JWT_EXPIRES_IN || '7d', databasePath: process.env.DATABASE_PATH || '/data/realblocks.db', serverUrl: process.env.SERVER_URL || 'http://localhost:3000', hf: { token: process.env.HF_TOKEN || '', repoId: process.env.HF_REPO_ID || '', }, smtp: { host: process.env.SMTP_HOST || '', port: parseInt(process.env.SMTP_PORT || '587', 10), secure: process.env.SMTP_SECURE === 'true', user: process.env.SMTP_USER || '', pass: process.env.SMTP_PASS || '', from: process.env.EMAIL_FROM || 'noreply@realblocks.com', }, corsOrigin: process.env.CORS_ORIGIN || 'http://localhost:5173', rateLimit: { windowMs: parseInt(process.env.RATE_LIMIT_WINDOW_MS || '900000', 10), maxRequests: parseInt(process.env.RATE_LIMIT_MAX_REQUESTS || '100', 10), }, google: { clientId: process.env.GOOGLE_CLIENT_ID || '', clientSecret: process.env.GOOGLE_CLIENT_SECRET || '', callbackUrl: process.env.GOOGLE_CALLBACK_URL || '', }, };