Skip to Content
Getting StartedEnvironment Variables

Environment Variables

The project uses Zod  for type-safe environment variable validation at startup.

Application Environment Variables

Environment variables are validated against the envSchema defined in app/lib/env.ts.

NODE_ENV

  • Type: 'development' | 'production' | 'test'
  • Default: 'development'
  • Description: Standard environment mode indicator.

BLOB_READ_WRITE_TOKEN

  • Type: string (Optional)
  • Format: Must begin with vercel_blob_rw_
  • Description: Read/write token for Vercel Blob object storage.

Deployment Tokens (CI / Local Deployments)

These tokens are used by deployment workflows in .github/workflows/deploy.yml and local deployment tasks defined in .mise.toml:

  • VERCEL_TOKEN: Authentication token for automated deployments using Vercel CLI.
  • RENDER_DEPLOY_HOOK: Webhook URL for triggering automated deployments to Render.
  • FIREBASE_TOKEN: Authentication token for deploying to Firebase Hosting via Firebase CLI.

Schema Definition

import { z } from "zod"; const envSchema = z.object({ NODE_ENV: z.enum(["development", "production", "test"]).default("development"), BLOB_READ_WRITE_TOKEN: z .string() .min(1) .startsWith("vercel_blob_rw_", "Token must start with 'vercel_blob_rw_'") .optional(), }); export const env = envSchema.parse({ NODE_ENV: process.env.NODE_ENV, BLOB_READ_WRITE_TOKEN: process.env.BLOB_READ_WRITE_TOKEN, }); export type Env = z.infer<typeof envSchema>;
Last updated on