cpns / packages /env /src /server.ts
pramudya-yb
Rename project from Labas to Pram
2b62b0c
Raw
History Blame Contribute Delete
1.2 kB
import "dotenv/config";
import { createEnv } from "@t3-oss/env-core";
import { z } from "zod";
export const env = createEnv({
server: {
DATABASE_URL: z.string().min(1),
REDIS_URL: z.string().min(1).default("redis://localhost:6379"),
BETTER_AUTH_SECRET: z.string().min(32),
BETTER_AUTH_URL: z.url(),
CORS_ORIGIN: z.url(),
API_KEY_ENCRYPTION_KEY: z.string().min(32),
NODE_ENV: z.enum(["development", "production", "test"]).default("development"),
SMTP_HOST: z.string().min(1).optional(),
SMTP_PORT: z.coerce.number().positive().default(587),
SMTP_USER: z.string().min(1).optional(),
SMTP_PASS: z.string().min(1).optional(),
SMTP_FROM: z.string().min(1).optional(),
PLATFORM_AI_API_KEY: z.string().optional(),
PLATFORM_AI_BASE_URL: z.string().optional(),
PLATFORM_AI_MODEL: z.string().optional(),
FREE_CREDITS_ENABLED: z.coerce.boolean().default(false),
FREE_CREDITS_MAX_POOL: z.coerce.number().positive().default(1_000_000),
DEFAULT_SIGNUP_CREDIT_TOKENS: z.coerce.number().positive().default(50_000),
CLOUDFLARE_TURNSTILE_SECRET_KEY: z.string().optional(),
},
runtimeEnv: process.env,
emptyStringAsUndefined: true,
});