# --- Database ------------------------------------------------------------- # When running via docker compose, "db" is the Postgres service hostname. # For running the backend directly on your host, use localhost:5432. DATABASE_URL=postgres://temetro:temetro@db:5432/temetro # --- Better Auth ---------------------------------------------------------- # Generate a strong secret (min 32 chars): openssl rand -base64 32 BETTER_AUTH_SECRET=replace-me-with-openssl-rand-base64-32 # Public base URL of THIS backend (used for auth callbacks & cookies). BETTER_AUTH_URL=http://localhost:4000 # Directory for uploaded patient/lab files. Defaults to ./uploads in local dev; # in Docker it's a persistent volume (see docker-compose.yml). UPLOAD_DIR=./uploads # --- AI ------------------------------------------------------------------ # Key used to encrypt at-rest AI provider API keys (per-user, set in the app's # Settings → AI). Generate one: openssl rand -base64 32. Rotating it forces # users to re-enter their provider keys. AI_CREDENTIALS_KEY=replace-me-with-openssl-rand-base64-32 # --- App ------------------------------------------------------------------ # The frontend origin — used for CORS, Better Auth trustedOrigins, and the # links embedded in verification / reset / invitation emails. FRONTEND_URL=http://localhost:3000 PORT=4000 NODE_ENV=development # Host port Postgres is published on by docker compose. Change it if 5432 is # already in use on your machine (the app still talks to Postgres internally). POSTGRES_PORT=5432 # --- Patient wallet relay ------------------------------------------------- # The URL baked into the QR a patient scans to import their record. Their phone # must be able to reach it — so localhost will NOT work from a real device. If # unset, the backend derives it from the request host (fine when you open the # web app over your LAN IP, e.g. http://192.168.1.20:3000). Otherwise set it # explicitly to a phone-reachable address: your machine's LAN IP or a public # tunnel URL. # PUBLIC_RELAY_URL=http://192.168.1.20:4000 # --- Email (optional) ----------------------------------------------------- # If SMTP_HOST is unset, emails (verify/reset/invite) are printed to the # server console instead of being sent — zero setup for local development. # SMTP_HOST=smtp.example.com # SMTP_PORT=587 # SMTP_USER= # SMTP_PASS= # SMTP_FROM="temetro "