# PostgreSQL connections (server only). Never commit real passwords. # DB_URL: the app role (personal_app: DML only, no DDL). DB_URL=postgresql://personal_app:CHANGE_ME@localhost:5432/personal_dev # DB_MIGRATE_URL: the schema owner (personal), used only by drizzle-kit, # scripts/db-migrate.ts, the seed scripts and deploy backups. DB_MIGRATE_URL=postgresql://personal:CHANGE_ME@localhost:5432/personal_dev # Use the exact public origin, including scheme and port. Set the same value for both. ORIGIN=http://localhost:5173 BETTER_AUTH_URL=http://localhost:5173 # Generate with: openssl rand -base64 48 BETTER_AUTH_SECRET= # Optional Google login; callback: /api/auth/callback/google GOOGLE_CLIENT_ID= GOOGLE_CLIENT_SECRET= # Optional osu! login; callback: /api/auth/callback/osu # These can also serve the existing beatmap finder. OSU_CLIENT_ID= OSU_CLIENT_SECRET= SPOTIFY_CLIENT_ID= SPOTIFY_CLIENT_SECRET= # Public browser key for Animaldex map tiles. PUBLIC_MAPTILER_API_KEY= # Cloudflare R2, shared by Animaldex and admin-uploaded list pictures. # R2_PUBLIC_URL is the public bucket/custom-domain base URL (without a trailing slash). R2_ACCOUNT_ID= R2_ACCESS_KEY_ID= R2_SECRET_ACCESS_KEY= R2_BUCKET= R2_PUBLIC_URL= # House tracker: shared secret for the home worker (openssl rand -hex 32), and # where alerts go (Discord webhook and/or ntfy topic URL). See docs/house-tracker.md. HOUSE_WORKER_TOKEN= HOUSE_DISCORD_WEBHOOK_URL= HOUSE_NTFY_URL= HOUSE_NTFY_TOKEN= # Money tracker bank sync (scripts/bank-link.ts, scripts/bank-sync.ts; not read by the web app). # Keep these in ~/.config/money-sync.env (mode 600), never in git. ENABLEBANKING_APP_ID= ENABLEBANKING_KEY_PATH= ENABLEBANKING_REDIRECT_URL=https://stanrunge.dev/projects/money-tracker/bank-callback