These same principles still apply for the latest XenForo versions. I took it a step further. I leave the base installed theme as-is, of course, and mark it DO NOT EDIT. I create a child under that which I use to make layout tweaks only, and also to apply our site's branding. Below that one, I create all of the different color themes for the site, so the only changes in this level of child theme are used for adjusting color. I no longer edit templates directly. Instead, I create an add-on to apply template modifications via XF's system. That leaves the base themes untouched, which makes upgrades so much easier. The only template I edit directly might be EXTRA.less, and only if it applies to specific color adjustments. (I use a template modification applied to EXTRA.less to insert common tweaks across all of the themes, which saves a lot of editing and chasing down bugs.)
Great information and will be a big help. I am getting ready to buy a style for my new XF site and knew about wanting to create a child but didn't know about a child of that. I never thought about this. Thanks for the guide.
EXCELLENT TUTORIAL: This is a must read even for seasoned developers. It is a good reminder that keeping it simple can be best. No need to create a new theme every time a upgrade comes along, just make a child of the parent theme.
Excellent! Mike is an excellent theme designer. This guide is really detailed and very helpful. I went from not knowing how to upgrade, to knowing everything needed to perform my first upgrade in a matter of minutes. Thank you for all your hard work.