Skip to content

๐Ÿ” Environment Variables โ€‹

All server configuration is managed through environment variables in packages/server/.env.

โš™๏ธ Core โ€‹

VariableDescriptionDefaultRequired
PORTAPI server port3000No
NODE_ENVEnvironment (development, production, test)developmentNo
CORS_ORIGINSComma-separated allowed originshttp://localhost:5173,http://localhost:5174Yes
DATABASE_URLPostgreSQL connection stringโ€”Yes

๐Ÿ”‘ Authentication โ€‹

VariableDescriptionDefaultRequired
JWT_SECRETSecret key for signing JWT tokensโ€”Yes
JWT_EXPIRES_INToken expiration duration7dNo

๐Ÿ’ณ Payments โ€‹

VariableDescriptionDefaultRequired
STRIPE_SECRET_KEYStripe secret API key (sk_test_... or sk_live_...)โ€”No
STRIPE_WEBHOOK_SECRETStripe webhook signing secret (whsec_...)โ€”No
PAYPAL_CLIENT_IDPayPal REST API client IDโ€”No
PAYPAL_CLIENT_SECRETPayPal REST API secretโ€”No

๐Ÿ”— Social Login โ€‹

VariableDescriptionDefaultRequired
BASE_URLPublic base URL for OAuth callbackshttp://localhost:3000No
GOOGLE_CLIENT_IDGoogle OAuth 2.0 client IDโ€”No
GOOGLE_CLIENT_SECRETGoogle OAuth 2.0 client secretโ€”No
FACEBOOK_APP_IDFacebook app IDโ€”No
FACEBOOK_APP_SECRETFacebook app secretโ€”No

๐Ÿ“ง Email โ€‹

VariableDescriptionDefaultRequired
SMTP_HOSTSMTP server hostnameโ€”No
SMTP_PORTSMTP server port587No
SMTP_USERSMTP usernameโ€”No
SMTP_PASSSMTP passwordโ€”No
EMAIL_FROMDefault "from" addressโ€”No

๐Ÿ“„ Example .env File โ€‹

dotenv
PORT=3000
NODE_ENV=development
CORS_ORIGINS=http://localhost:5173,http://localhost:5174

DATABASE_URL=postgresql://kitchenasty:kitchenasty@localhost:5432/kitchenasty

JWT_SECRET=change-this-to-a-random-secret
JWT_EXPIRES_IN=7d

STRIPE_SECRET_KEY=sk_test_...
STRIPE_WEBHOOK_SECRET=whsec_...

TIP

In Docker Compose, the database host should be postgres (the service name), not localhost.