Skip to main content

Knowledge > Runbooks > Deployment > Deploy IllustrateTheWord

Deploy IllustrateTheWord to Production

Deploy changes to illustratetheword.com (ITW — sermon illustrations) via Vercel's git-based continuous deployment.

Prerequisites

  • Write access to the sermon-illustrations GitHub repo
  • pnpm installed locally
  • vercel CLI logged in (vercel whoamichurchwiseai-5386)
  • Working directory: C:\dev\sermon-illustrations\

Steps

  1. Create a feature branch from the deploy branch

    cd /c/dev/sermon-illustrations
    git checkout master && git pull
    git checkout -b feat/<short-description>

    Note: ITW deploys from master, not main.

  2. Make your changes, then verify the build passes locally

    pnpm build

    The build command must be run from C:\dev\sermon-illustrations\ (the project root), not from a subdirectory.

  3. Stage and commit

    git add <specific-files>
    git commit -m "feat: describe your change"
  4. Push the feature branch

    git fetch origin && git pull --rebase
    git push -u origin feat/<short-description>

    Vercel creates a preview deployment automatically.

  5. Verify the preview deployment

    • Test illustration browsing: [preview-url]/illustrations
    • Test an illustration detail page: [preview-url]/illustrations/[some-slug]
    • Test pricing page: [preview-url]/pricing
    • If Supabase Auth is involved, test sign-in and premium content access
  6. Merge to master to trigger production deploy

    git checkout master && git pull
    git merge feat/<short-description>
    git push
  7. Monitor the production deployment

    vercel logs --tail --project sermon-illustrations
  8. Smoke test production

Verification

vercel ls --project sermon-illustrations

Top entry should show "Production" with status "Ready" and a recent timestamp.

Special Considerations

  • Content lives in Supabase (unified_rag_content table, 327K rows). Deployments do not affect content — content changes are made via scripts in sermon-illustrations/scripts/.
  • Supabase Auth is used for ITW (unlike PewSearch which uses token-based auth). Test sign-in after any auth-related changes.
  • dir_illustrations is a view — a read-only snapshot of unified_rag_content. Do not modify directly.
  • isomorphic-dompurify / jsdom must NOT be used in Vercel serverless — use the blocklist sanitizer for DB content. See feedback_dompurify_serverless.md in agent memory.

Rollback

If the production deploy is broken, see rollback.md.

See Also

  • rollback.md — revert a bad deploy
  • C:\dev\sermon-illustrations\CLAUDE.md — project-specific instructions
  • C:\dev\sermon-illustrations\internal\content-rules.md — content generation rules