AphrodyBun GitHub

Runtime docs · Guides · Processes & System

Set environment variables

Set environment variables for Bun through .env files or the command line, and read them with process.env or Bun.env.

Access the current environment variables with process.env or Bun.env.

index.ts
Bun.env.API_TOKEN; // => "secret"
process.env.API_TOKEN; // => "secret"

Set these variables in a .env file.

Bun reads the following files automatically (listed in order of increasing precedence).

  • .env
  • .env.production, .env.development, .env.test (depending on value of NODE_ENV)
  • .env.local (not loaded when NODE_ENV=test)
  • .env.production.local, .env.development.local, .env.test.local (depending on value of NODE_ENV)
.env
FOO=hello
BAR=world

You can also set variables on the command line.

Linux/macOS
FOO=helloworld bun run dev
Windows
# Using CMD
set FOO=helloworld && bun run dev

# Using PowerShell
$env:FOO="helloworld"; bun run dev

See Environment variables.