| 1 |
# Server Configuration |
| 2 |
HOST=127.0.0.1 |
| 3 |
PORT=3000 |
| 4 |
|
| 5 |
# Database (on macOS with Homebrew, use your username without password) |
| 6 |
DATABASE_URL=postgres://your_user@localhost:5432/makenotwork |
| 7 |
|
| 8 |
# Authentication |
| 9 |
JWT_SECRET=your-super-secret-jwt-key-change-in-production |
| 10 |
|
| 11 |
# Session |
| 12 |
SESSION_SECRET=your-session-secret-change-in-production |
| 13 |
|
| 14 |
# Optional: Stripe Connect (payments) |
| 15 |
# Get these from https://dashboard.stripe.com/apikeys |
| 16 |
# STRIPE_SECRET_KEY=sk_test_... |
| 17 |
# STRIPE_WEBHOOK_SECRET=whsec_... |
| 18 |
# HOST_URL=http://localhost:3000 |
| 19 |
|
| 20 |
# Optional: S3 Storage (for file uploads) |
| 21 |
# S3_ENDPOINT=https://fsn1.your-objectstorage.com |
| 22 |
# S3_BUCKET=makenotwork-files |
| 23 |
# S3_REGION=fsn1 |
| 24 |
# S3_ACCESS_KEY= |
| 25 |
# S3_SECRET_KEY= |
| 26 |
|
| 27 |
# REQUIRED. Render base for every public image and media URL. In production this |
| 28 |
# is the Cloudflare-proxied edge in front of the public bucket. In dev, point it |
| 29 |
# straight at the public bucket's origin; there is no unset mode. |
| 30 |
CDN_BASE_URL=https://cdn.makenot.work |
| 31 |
|
| 32 |
# Optional: Email (Phase 8) |
| 33 |
# SMTP_HOST= |
| 34 |
# SMTP_PORT=587 |
| 35 |
# SMTP_USER= |
| 36 |
# SMTP_PASS= |
| 37 |
# FROM_EMAIL=noreply@makenot.work |
| 38 |
|
| 39 |
# Optional: the multithreaded browser-harness phase of `--seed-examples`. Set |
| 40 |
# both on a testnot box to have the reseed recreate the login-capable harness |
| 41 |
# accounts and the mt OAuth client; leave unset anywhere else and the seed |
| 42 |
# builds the catalog alone. See multithreaded/deploy/README.md. |
| 43 |
# MT_HARNESS_PASSWORD= |
| 44 |
# MT_HARNESS_REDIRECT_URI=https://<mt-host>/auth/callback |
| 45 |
|
| 46 |
# Optional: the demo-buyer phase of `--seed-examples`. Set on a testnot box to |
| 47 |
# have the reseed create the `demo_collector` account and its purchase history, |
| 48 |
# which is what makes /library shootable for the landing carousel. Leave unset |
| 49 |
# anywhere else and the seed builds the catalog without a buyer. The capture |
| 50 |
# script reads the same value as CAPTURE_BUYER_PASSWORD. See src/seed/buyer.rs. |
| 51 |
# TESTNOT_BUYER_PASSWORD= |
| 52 |
|
| 53 |
|