Notes
Documentation, experiments, and production lessons. Sorted newest first.
Cloudflare: Edge Markdown for AI Bots
AI crawlers fetch full HTML pages and load the origin for content they turn into text anyway. I built a Cloudflare Worker that serves them pre-rendered Markdown from KV storage at the edge, with zero origin load.
- AI
- Cloudflare
- Markdown
- WordPress
Replit: Deploying Replit Agent Sites to WP Engine Headless
How I took a site built by the Replit AI Agent, reworked its strict pnpm monorepo for a plain Node host, and set up automated deploys to WP Engine's Headless Platform.
- AI
- Headless
- Replit
- WP Engine
Lovable: Deploying Lovable Sites to WP Engine Headless
AI site builders like Lovable target serverless hosts by default. How I got a Lovable app (Vite, TanStack Start, Nitro) running as a Node server on WP Engine's Headless Platform, with auto-deploys from GitHub.
- AI
- GitHub
- Lovable
- WordPress
GitHub: CI/CD Deployment Workflow for minimising downtime
A CI/CD pipeline I designed for a sensitive WordPress site: every push deploys to staging automatically, and production only changes through a manual, configurable copy via the WP Engine API.
- API
- Ci/CD
- GitHub
- WP Engine
New Relic: Suppressing New Relic PHP Warnings
How I kept the New Relic error rate meaningful on managed WordPress hosting, where the agent's settings are locked: a small MU-plugin that logs PHP warnings locally instead of reporting them.
- Logs
- New Relic
- Plugin
- WordPress
GitHub: Semi-Failover
A failover plan for a managed WordPress site with no built-in failover: GitHub Actions and the WP Engine API keep a backup environment in sync daily and move the domain to it in one click.
- Failover
- GitHub
- WordPress
- WP Engine
GitHub: Executing Scheduled Actions (Cron)
WP-Cron only runs when someone visits the site, and managed WordPress hosting often has no real cron. How I ran scheduled server commands from GitHub Actions over SSH instead, with no extra server.
- Cron
- GitHub
- Scripts
- WordPress
Cloudflare: Workers Cache Segmentation
How I served a cached bot version of pages to crawlers and the normal version to people, on managed WordPress hosting where the cache sits in front of PHP: a Cloudflare Worker that tags bot requests at the edge.
- Caching
- Cloudflare
- WordPress
- Worker
Cloudflare: Workers Failover
When the origin server goes down, the site usually goes with it. A Cloudflare Worker I built reroutes visitors to a failover origin on server errors or timeouts, while the address in their browser stays the same.
- Cloudflare
- Failover
- WordPress
- Worker
GoAccess: Automatic Daily Log Offload and Dashboard
A proof of concept I built to offload a site's access logs every day without an S3 bucket, and turn them into a GoAccess dashboard. The same approach works with other log tools and servers.
- GoAccess
- Logs
- Observability
- WordPress