Een dating-app op basis van brieven, niet van gezichten!
Deze repository wordt als momentopname gepubliceerd: een clone bevat de volledige inhoud, maar geen commitgeschiedenis.
# ---- server/ en db/setup.js ----
DATABASE_URL=postgres://postgres:postgres@localhost:5432/liefdesbrieven
PORT=3000
# Extra origins toestaan (komma-gescheiden). Standaard: Vite-dev + Capacitor-schema's.
# CORS_ORIGINS=http://localhost:5173,https://localhost,capacitor://localhost
# Waar deze installatie voor de buitenwereld staat, zonder slash aan het eind — hieruit wordt de
# herstel-link van "wachtwoord vergeten" gebouwd. Standaard PUBLIC_URL uit src/constants.js; zet dit
# alleen voor een andere installatie, of om de herstelmail lokaal een keer helemaal te doorlopen.
# De Host-header van het verzoek wordt er bewust niet meer voor gebruikt: die schrijft de bezoeker
# zelf op, en de link gaat naar iemand anders.
# PUBLIC_BASE_URL=http://localhost:3000
# Vertrouwen we X-Real-IP / X-Forwarded-For? Standaard alleen als het verzoek van de eigen machine
# of het eigen netwerk komt — dat is nginx die proxyt. Rechtstreeks verkeer van buiten heeft geen
# proxy, dus zijn die headers verzonnen en telt het socket-adres. Hierop hangt elke rem die per
# adres telt, dus zet dit alleen als je opstelling anders in elkaar zit: 1 = altijd vertrouwen
# (proxy op een andere machine), 0 = nooit (geen proxy ervoor).
# TRUST_PROXY=
# ---- betaalde plekken (server/billing.js) ----
# Nodig zodra de gratis bak (FREE_ACCOUNTS in src/constants.js) op is: zonder deze sleutel
# weigert de server een betaalde registratie met 503 in plaats van hem door te laten.
# PLAY_SERVICE_ACCOUNT mag een pad naar het JSON-sleutelbestand zijn, of de JSON zelf.
# PLAY_PACKAGE=nl.bramluiken.liefdesbrieven
# PLAY_SERVICE_ACCOUNT=./play-service-account.json
# ---- promotieteam (server/promotie.js, db/promotie/) ----
# De beheerpagina /promotieteam: de ledenlijst van de vrienden die mond-tot-mondreclame maken.
# Eén wachtwoord, via HTTP Basic (de gebruikersnaam doet niet mee). Staat het er niet, dan geeft
# de pagina 503 — dicht, niet open. Eigen database, los van die van de app: die wordt bij elke
# schemawijziging opnieuw opgezet en deze lijst hoort dat niet mee te maken.
# PROMOTIE_PASSWORD=
# PROMOTIE_DATABASE_URL=postgres://postgres:postgres@localhost:5432/promotie
# De post aan het team gaat via Postmark (server/mail.js). Zonder token wordt er niets verstuurd
# en zegt de pagina dat ook. De afzender staat op het platformdomein, zodat DKIM uitlijnt met
# DMARC; de broadcast-stream is voor groepspost (de welkomstmail gaat via 'outbound') en levert
# ook de afmeldingen aan, die de pagina terugleest.
# POSTMARK_SERVER_TOKEN=
# PROMOTIE_FROM=Bram van Liefdesbrieven <marketing@liefdesbrieven.bramluiken.org>
# PROMOTIE_STREAM=liefdesbrieven-promotieteam
# ---- de twee echte seed-accounts (alleen gelezen door npm run db:setup) ----
# De seed maakt "Bram" en "Nina" aan op @voorbeeld.nl met het gewone seed-wachtwoord. Staan deze
# variabelen er, dan zet db/setup.js daar het echte adres en wachtwoord overheen. Zo staat er geen
# bruikbaar inloggegeven in deze repository, terwijl een installatie toch met één opdracht klaarstaat
# voor de beoordelaar van de app-store — die heeft een account nodig, want alles zit achter de login.
# Los te zetten: alleen een wachtwoord mag ook, dan blijft het adres uit de seed staan.
# SEED_BRAM_EMAIL=
# SEED_BRAM_PASSWORD=
# SEED_REVIEW_EMAIL=
# SEED_REVIEW_PASSWORD=
# ---- frontend (Vite leest alleen VITE_*) ----
# Leeg = zelfde origin (Vite proxyt /api naar :3000) — zo blijft `npm run dev` lokaal.
# Builds (npm run build / cap:sync) lezen .env.production, waar de productie-URL staat.
# Wil je de app op een toestel tegen je lokale API testen, zet VITE_API_URL dan in
# .env.production.local (gitignored, wint van .env.production): Android-emulator
# http://10.0.2.2:3000, fysiek toestel http://<ip-van-je-pc>:3000 — en zet
# android.allowMixedContent op true in capacitor.config.json.
VITE_API_URL=