The Guide to Craft CMS Development

Craft CMS professional Ryan Masuga shares a practical method for developing Craft CMS projects and version controlling them with Git.

Buy now!
The Guide to Craft CMS Development by Ryan Masuga

Be a better Craft CMS developer right now.

Masuga Design has developed sites on Craft CMS since 2013, and is an official Craft Partner. I'm sharing everything we know about setting up Craft projects and versioning them with Git. We have continually refined our approach from one project to the next, and now you can immediately benefit from our trial and error by reading The Guide to Craft CMS Development.

Make More Money With Craft

If you can competently and efficiently produce a solid product and market your Craft skills with confidence, you're going to be able to charge more money for your services. Our average project quote has grown significantly over the last few years, and our efficiency in setting up Craft projects means we are more profitable on those projects.

I believe after reading this guide you'll feel confident enough to charge what you're worth, and be more efficient so that each project nets you more profit.

Separate Yourself From the Cruft

Your client isn't just buying a Craft site - they're buying a better version of themselves - and they're trusting you to deliver. So what separates you from any other Craft developer? It's the details. With my practical advice on efficiently setting up and deploying Craft projects, you can turn out your best work and make your clients sing your praises.

Table of Contents

  • Chapter 1: Introduction
  • Chapter 2: Practical Development
  • Chapter 3 Security
  • Chapter 4: Setting Up Craft
  • Chapter 5: Version Control
  • Chapter 6: Updating Craft
  • Chapter 7: Customization
  • Chapter 8: Optimizing Craft
  • Chapter 9: Coming From ExpressionEngine
  • Chapter 10: Matrix and Long Form Content
  • Conclusion
  • Craft CMS Resources

Topics Covered In The Craft CMS Guide

How can I get a site up and running quickly? How should I structure my project? What security measures can I implement? How can I best customize the CMS for the client? I answer these questions and more by drawing from our experience developing with Craft.

Project Organization

Project Organization

I show you a sensible way to structure a Craft site for secure, no-nonsense development. It's the method Masuga Design uses to build Craft sites.

Version Control

Version Control

How do you version control a Craft site with Git? What should you ignore? I answer these questions and more.

Multiple Environments

Multiple Environments

Config settings, environment variables, and .env files. A setup for working locally and deploying remotely that isn't overly complex.



From Craft Stack Exchange, to Mijingo, to Craft Link List and beyond, I discuss various Craft resources and their relative merits.

Automating Installs

Automating Installs

Save a ton of time and whip up new Craft sites very efficiently by automating the installation and setup process. I share how we start new Craft projects. You're sure to learn something new!

Coming from ExpressionEngine

Coming from ExpressionEngine

Many ExpressionEngine developers have taken an interest in Craft, just like us. For those people, I have a whole section of info that contrasts and compares the two systems.

The Word on the Craft Guide

Tweeting about the Craft guide? Use hashtag #craftcmsguide

Sid O'Neill, Developer

I’m blown away by how useful, well written and worthwhile it's been – it’s already leveled up my Craft game by an astonishing amount. Many thanks for an excellent guide!

—Sid O'Neill, Developer
Paulo Elias, Developer

Huge congrats to @masuga for getting this out! Just got my copy & I’m stoked to dig in to see where I can improve my own #CraftCMS projects

Paulo Elias, Developer
Jae Barclay (@ejaedesign)

THANK YOU for the guide. Already implemented several things to our basic build.

Jae Barclay (@ejaedesign)
Andrew Armitage

Having read @masuga’s Guide to #eecms, if you’re working with #craftcms, would recommend you go here #craftcmsguide

Andrew Armitage

Looks interesting: from @gomasuga - The EE version was excellent, more of the same please. #craftcmsguide #craftcms

Ryde Digital

Looking forward to the new @CraftCMS guide from @masuga .. keen to learn this CMS #craftcmsguide

Ryde Digital

Get the Guide to Craft CMS Development


You'll get a 165 page PDF with your order.


165 page PDF. No nonsense stuff!

Buy The Craft CMS Guide

Want to check it out first? Download a free sample (28 pages).

Download Free Sample (PDF)

Sign Up to the Mailing List

Get notified about updates or new releases to The Guide to Craft CMS Development. (Very infrequent emails.)

About the Author

Ryan Masuga

Ryan Masuga

I've used Craft CMS professionally since 2013, and Masuga Design is an official Craft CMS Partner. We start nearly all new client projects with Craft - because it's very often the best tool for the job. View our Craft page for more info on Masuga Design's experience using Craft.

I live in West Michigan with my wife and three kids.

Changelog for the Craft Guide

Version 3 (July 24, 2019)

  • Fixed out of order pages.
  • Fixed broken link.

Version 2 (June 22, 2017)

  • Clarified keeping .git directories on the production server (whether in public folder or above webroot).
  • Fixed numerous typos. (Thanks for Andy and Jae for pointing those out.)
  • Improved the Table of Contents (It now shows chapter names, and they're clickable right to the chapter).

Version 1 (June 16, 2017)

  • Initial release!

© Copyright 2020 Ryan Masuga. All Rights Reserved.
The Guide to Craft CMS Development is not affiliated with or endorsed by Pixel & Tonic, Inc.