46 lines
1.6 KiB
Plaintext
46 lines
1.6 KiB
Plaintext
# Server
|
|
PORT=3001
|
|
NODE_ENV=development
|
|
MONGODB_URI=mongodb://127.0.0.1:27017/toms-allotment
|
|
SESSION_SECRET=replace-with-long-random-string
|
|
|
|
# Browser origin (CORS + session). In dev with Vite, use the Vite dev server URL so cookies work through the proxy.
|
|
CLIENT_URL=http://localhost:5173
|
|
|
|
# OIDC (optional — omit to disable sign-in; watering stays disabled)
|
|
OIDC_ISSUER=https://your-idp.example.com/realms/your-realm
|
|
OIDC_CLIENT_ID=toms-allotment
|
|
OIDC_CLIENT_SECRET=
|
|
# In dev, use Vite proxy so the callback is same-site with the UI:
|
|
OIDC_REDIRECT_URI=http://localhost:5173/auth/callback
|
|
|
|
# MQTT (optional — copy config/mqtt.example.json to config/mqtt.json)
|
|
MQTT_CONFIG_PATH=
|
|
MQTT_PASSWORD=
|
|
|
|
# Single TTN device (optional — overrides packages/server/config.json device.*)
|
|
# DEMO_* still supported; DEVICE_TTN_* wins if both are set.
|
|
DEMO_TTN_APP_ID=demo-app
|
|
DEMO_TTN_DEV_ID=demo-device
|
|
# DEVICE_TTN_APPLICATION_ID=
|
|
# DEVICE_TTN_DEVICE_ID=
|
|
# DEVICE_NAME=
|
|
|
|
# S3-compatible storage (patch images). Prefer env for secrets — do not commit keys.
|
|
# Cloudflare R2: endpoint https://<ACCOUNT_ID>.r2.cloudflarestorage.com (no bucket in path).
|
|
# Region is forced to "auto" for R2 when the endpoint host is r2.cloudflarestorage.com.
|
|
# MinIO: set S3_ENDPOINT (e.g. http://localhost:9000) and S3_FORCE_PATH_STYLE=true
|
|
S3_BUCKET=
|
|
S3_PREFIX=allotment-images
|
|
S3_ENDPOINT=
|
|
# R2 API token or MinIO access key (AWS_* also work if unset here)
|
|
S3_ACCESS_KEY_ID=
|
|
S3_SECRET_ACCESS_KEY=
|
|
# Optional (temporary creds / assume-role)
|
|
S3_SESSION_TOKEN=
|
|
S3_FORCE_PATH_STYLE=
|
|
AWS_REGION=
|
|
AWS_ACCESS_KEY_ID=
|
|
AWS_SECRET_ACCESS_KEY=
|
|
AWS_SESSION_TOKEN=
|