Blog

Practical notes on building with Craft CMS, modern tooling, and the things I run into along the way.

Craft CMS Algolia InstantSearch Search

Building Faceted Search in Craft CMS with Algolia and InstantSearch

How to build fast, faceted search and listing pages in Craft CMS using Algolia and InstantSearch.js. Indexing with Scout, configuring filters, and real-world lessons from a property listings project.

Craft CMS Multi-Site Architecture

Multi-Site Architecture in Craft CMS: Patterns That Actually Work

How to architect multi-site and multi-language Craft CMS installations. When to use multi-site, shared vs separate content, language patterns, and the configuration details that matter.

Craft CMS Plugins Tooling

The Craft CMS Plugins I Install on Every Project (And a Few I Don't)

An opinionated guide to the best Craft CMS plugins organized by use case. SEO, forms, caching, images, navigation, and more. Based on 70+ client projects.

Craft CMS Business Partner Program

What I've Learned as an Official Craft CMS Partner

Reflections on being an Official Craft CMS Partner. What the program is actually like, how it changed my business, and honest advice for developers thinking about applying.

Craft CMS AI Automation

Practical AI Integrations for Craft CMS

How to integrate AI into Craft CMS workflows without overcomplicating things. Covers content generation helpers, image alt text automation, smart search, and custom AI modules.

Craft CMS WordPress Opinion

Why I Recommend Craft CMS Over WordPress (And When I Don't)

An honest comparison from someone who's built with both for 20+ years. When Craft is the better choice, when WordPress still wins, and how to make the call for your project.

Craft CMS DDEV Local Development

Setting Up DDEV for Craft CMS Local Development

The complete guide to running Craft CMS locally with DDEV. Covers installation, project setup, database management, Xdebug, Vite integration, and the commands you'll use every day.

Craft CMS DevOps CI/CD

Deployment Pipelines for Craft CMS: From Git Push to Production

How to set up a proper deployment pipeline for Craft CMS. Covers Project Config, GitHub Actions, database migrations, Forge deploy scripts, and zero-downtime patterns.

Craft CMS WordPress Migration

Craft CMS for WordPress Developers: A Translation Guide

A side-by-side guide for WordPress developers learning Craft CMS. Maps WP concepts to Craft equivalents, compares template code, and covers the mental model shift.

Craft CMS Performance Caching

Performance Tuning Craft CMS: Eager Loading, Caching, and Query Optimization

How to make Craft CMS fast. Covers eager loading to fix N+1 queries, template caching, static caching, query optimization, and the tools I use to find bottlenecks.

Craft CMS GraphQL Headless API

Headless Craft CMS: GraphQL vs Element API vs Just Using Twig

A practical comparison of headless Craft CMS approaches. When to use GraphQL, when Element API makes more sense, and when you should just stick with Twig.

Craft CMS PHP Modules

Building Custom Modules in Craft CMS (And When to Skip the Plugin)

How to build custom modules for project-specific logic. Covers module scaffolding, event listeners, Twig extensions, console commands, and when a module makes more sense than a plugin.

Craft CMS Migration Craft 5

Migrating from Craft 4 to Craft 5: What I Learned the Hard Way

A practical guide to migrating Craft CMS from version 4 to 5. Covers the big changes, step-by-step process, Twig updates, plugin compatibility, and the gotchas nobody warns you about.

Craft CMS Vite Tooling

Setting Up Vite with Craft CMS

How to replace Webpack or Mix with Vite in your Craft CMS projects. Covers the full setup from scratch, including hot module replacement, Twig integration, and production builds.