Skip to main content

Infrastructure & external products

What Rewhaven runs on and talks to. Most cloud wiring is config-driven and currently optional (the app runs fully local); some pieces live in separate repos or are planned.

Supabase

The cloud backend (IaC in infra/supabase/): Postgres + household-scoped RLS (11 migrations), Auth, Storage, and Edge Functions for privileged ops — grant-entitlement and send-invite (both .gitkeep stubs — scaffolded, not yet implemented). The SDK reaches it via the built cloud data adapter (SP3 — SupabaseStorageAdapter full StoragePort over PostgREST, RLS-enforced), switched on by ClientConfig(api: ApiConfig(...)) with a public anon key only. In DataMode.cloud the five watch* streams are now driven cross-device by Supabase Realtime (postgres_changes, RLS-scoped), re-hydrating the cache on an other-device commit (SP3.5 — delivered). Auth wiring (productionConfiguration) remains deferred — see Auth. See also Containers.

Cloudflare

  • Marketsiterewhaven.com is a Cloudflare Worker (static assets + one /api/subscribe route → Turnstile + Supabase). It lives in its own repo (rytedesigns/rewhaven-marketsite), not this one.
  • Developer portal (planned) — the long-term home for this portal is Cloudflare Pages + Cloudflare Access (path-scoped auth). See the hosting & auth decision.

Dev hosting (today)

The portal you're reading is served from this machine: a Caddy container (reverse proxy + TLS) fronts *.eldr-labs.duckdns.org (DuckDNS wildcard) → host.docker.internal:8002, a Python static server over the built site. The deploy script is scripts/deploy-developer-gallery.sh. (Not durable across reboots — re-run the script.)

AI recommender

The ChoreRecommendation / ChoreSuggestion flow (North Star §3) is planned — an Ollama / cloud model behind the SDK's ai adapter (currently a stub). See the domain-coverage audit.