ChaviDocumentationGetting started

Getting started

Operations runbook (stub)

The full deploy / ingest / digest cron / pace / rollback operations runbook for this codebase is not maintained in this repository. It is edited in a separate workspace so programme-specific ops (including unrelated property programmes) stay out of this git tree.

In this repo you can rely on:

  • CONTRIBUTING.md — PR gate (npm run check), migrations, brand constants.
  • docs/SECRETS.md — environment variable names (no secret values).
  • Smoke checks: GET /api/health and GET /api/health?deep=1 when Supabase is configured.

The in-app /docs/runbook route reads this file so the link still resolves instead of 404.

Production architecture (post-cutover)

Domain: chavi.works (registered + DNS at Cloudflare)

Inbound mail: Cloudflare Email Routing on chavi.works

  • 52916@chavi.works → Worker chavi-email-ingest (LQ / SynXis)
  • md188@chavi.works → Worker chavi-email-ingest (QI / Choice)

Worker: chavi-email-ingest (Cloudflare Workers)

  • Source: cloudflare-email-worker/
  • Bindings: CLOUDFLARE_EMAIL_WORKER_SECRET + INGEST_URL
  • Account ID: d254adf34f47acf2c192d2bf418e5a41
  • Zone ID (chavi.works): 0376e2e4f9fc52a1a34fb65c5074d5b8

Outbound mail: Resend (chavi.works verified, sending only)

  • From: notification@chavi.works (or the address set in RESEND_FROM_EMAIL; see docs/SECRETS.md)

App: Vercel project tarikeematbolhttps://tarikeematbol.vercel.app

Database: Supabase project znuzorvvhitrlsgufzji

Operational detail for the Worker (deploy, rotate, troubleshoot): docs/email-worker-runbook.md.