19 lines
621 B
JavaScript
19 lines
621 B
JavaScript
import { config } from 'dotenv'
|
|
import path from 'node:path'
|
|
import { fileURLToPath } from 'node:url'
|
|
import { z } from 'zod'
|
|
|
|
const __filename = fileURLToPath(import.meta.url)
|
|
const __dirname = path.dirname(__filename)
|
|
|
|
config({ path: path.join(__dirname, '..', '.env') })
|
|
|
|
const envSchema = z.object({
|
|
PORT: z.coerce.number().default(3001),
|
|
DATABASE_URL: z.string().min(1).default('postgresql://planner:planner1234@localhost:5432/ten_minute_planner'),
|
|
CORS_ORIGIN: z.string().default('http://localhost:5173'),
|
|
SESSION_TTL_DAYS: z.coerce.number().default(30),
|
|
})
|
|
|
|
export const env = envSchema.parse(process.env)
|