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-illustrationsGitHub repo pnpminstalled locallyvercelCLI logged in (vercel whoami→churchwiseai-5386)- Working directory:
C:\dev\sermon-illustrations\
Steps
-
Create a feature branch from the deploy branch
cd /c/dev/sermon-illustrationsgit checkout master && git pullgit checkout -b feat/<short-description>Note: ITW deploys from
master, notmain. -
Make your changes, then verify the build passes locally
pnpm buildThe build command must be run from
C:\dev\sermon-illustrations\(the project root), not from a subdirectory. -
Stage and commit
git add <specific-files>git commit -m "feat: describe your change" -
Push the feature branch
git fetch origin && git pull --rebasegit push -u origin feat/<short-description>Vercel creates a preview deployment automatically.
-
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
- Test illustration browsing:
-
Merge to master to trigger production deploy
git checkout master && git pullgit merge feat/<short-description>git push -
Monitor the production deployment
vercel logs --tail --project sermon-illustrations -
Smoke test production
- https://illustratetheword.com — homepage loads
- https://illustratetheword.com/illustrations — illustration listing renders
- https://illustratetheword.com/pricing — pricing page shows correct prices
- Sign in with a test account and verify premium content is accessible
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_contenttable, 327K rows). Deployments do not affect content — content changes are made via scripts insermon-illustrations/scripts/. - Supabase Auth is used for ITW (unlike PewSearch which uses token-based auth). Test sign-in after any auth-related changes.
dir_illustrationsis a view — a read-only snapshot ofunified_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.mdin 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 instructionsC:\dev\sermon-illustrations\internal\content-rules.md— content generation rules