Setup by Framework
Vite React + Vite
.env
# Accessible from frontend (VITE_ prefix required!)
VITE_API_URL=https://api.example.com
VITE_PUBLIC_KEY=pk_test_xxx
# Not accessible from frontend (server-only)
DATABASE_URL=postgres://...
SECRET_KEY=your-secret
Usage: import.meta.env.VITE_API_URL
Next.js
.env.local
# Accessible from frontend (NEXT_PUBLIC_ prefix required!)
NEXT_PUBLIC_API_URL=https://api.example.com
# Server-only
DATABASE_URL=postgres://...
Usage: process.env.NEXT_PUBLIC_API_URL
Python FastAPI
.env
DATABASE_URL=postgres://user:pass@localhost/db
SECRET_KEY=your-secret-key
DEBUG=trueconfig.py
from pydantic_settings import BaseSettings
class Settings(BaseSettings):
database_url: str
secret_key: str
debug: bool = False
class Config:
env_file = ".env"
settings = Settings()Add to .gitignore!
.env files contain sensitive information.
Make sure to add them to .gitignore so they don't get uploaded to GitHub.
.gitignore
# Environment variable files
.env
.env.local
.env.*.local