Deployment
| Service | Platform |
|---|---|
apps/api | Render (offerly-api) |
apps/pdf-service | Render (offerly-pdf-service) |
MCP server (packages/mcp-tool-server) | Render (offerly-mcp) |
apps/web | Vercel |
This docs site (website/) | Vercel (separate project, jobweave.catesworks.dev) |
| Database, Auth, Storage | Supabase Cloud |
render.yaml is historical, not the live source of truth
render.yaml:14-21 states this explicitly: as of 2026-08-21, offerly-api,
offerly-pdf-service, and offerly-mcp all cut over to image-backed deploys pulling from
ECR. offerly-mcp is dashboard-managed and is never declared in this file at all — only two
of the three live Render services appear in the YAML. No Render Blueprint resource links this
repo, so render.yaml cannot auto-sync or revert the cutover, but it also cannot be trusted as
a live inventory. Each service's actual image field, visible in the Render dashboard, is the
source of truth.
The docs site deploys independently
website/ is its own Vercel project with rootDirectory=website and framework=docusaurus-2
set explicitly in the dashboard (auto-detection proved unreliable on the sibling project this
setup is modeled on). apps/web's Vercel project ignores commits that touch only website/**,
so a docs-only change never triggers a product redeploy.