ShipKit.one

Environment Variables

Configure features and overrides with env values.

Overview

Use environment variables to configure features and runtime behavior.

Environment files

  • Development: .env.local or .env.development
  • Production: .env.production
  • Cloudflare Workers: wrangler.toml

Admin account

ADMIN_EMAILS=

Database

DATABASE_URL=
DB_PROVIDER=
DB_POOL_SIZE=1

Auth

BETTER_AUTH_SECRET=
BETTER_AUTH_URL=
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=

Stripe

STRIPE_SECRET_KEY=
STRIPE_WEBHOOK_SECRET=
STRIPE_PAYMENT_LINK_URL=

Credits (Stripe)

STRIPE_CREDITS_BASE_PRICE_ID=
STRIPE_CREDITS_STANDARD_PRICE_ID=
STRIPE_CREDITS_PREMIUM_PRICE_ID=
CREDITS_BASE_PRICE=
CREDITS_STANDARD_PRICE=
CREDITS_PREMIUM_PRICE=
CREDITS_EXPIRE_DAYS=365
CREDITS_UNIT_USD=0.01
CREDITS_MARGIN=0.6
CREDITS_MINIMUM_CHARGE=1
CREDITS_FREE_GRANT=0
CREDITS_FREE_EXPIRE_DAYS=0

Creem

CREEM_API_KEY=
CREEM_WEBHOOK_SECRET=
CREEM_PRODUCT_LIFETIME_ID=
CREEM_MODE=production

PayPal

PAYPAL_CLIENT_ID=
PAYPAL_CLIENT_SECRET=
PAYPAL_WEBHOOK_ID=
PAYPAL_MODE=sandbox

Email (Resend)

RESEND_API_KEY=
EMAIL_FROM=
RESEND_WEBHOOK_SECRET=
SUPPORT_FROM_EMAIL=
SUPPORT_FORWARD_TO=

Application

NEXT_PUBLIC_APP_URL=
NEXT_PUBLIC_APP_NAME=
NEXT_PUBLIC_APP_DESCRIPTION=
NEXT_PUBLIC_GA_MEASUREMENT_ID=

GitHub Delivery

GITHUB_DELIVERY_TOKEN=
GITHUB_DELIVERY_OWNER=
GITHUB_DELIVERY_REPO=
GITHUB_DELIVERY_TEAM_ID=
GITHUB_INVITE_FORCE_LIVE=

Storage (Cloudflare R2)

R2_ACCOUNT_ID=
R2_ACCESS_KEY_ID=
R2_SECRET_ACCESS_KEY=
R2_BUCKET=
R2_PUBLIC_URL=

Test mode

E2E_TEST_MODE=false

Reading env values

// src/app/api/ping/route.ts
export async function GET() {
  const appUrl = process.env.NEXT_PUBLIC_APP_URL;
  return new Response(`App URL: ${appUrl}`);
}

NEXT_PUBLIC_ variables are available in client and server components. Variables without NEXT_PUBLIC_ are server-only.

If you change env values in production, restart the app to apply the updates.

On this page