My starter theme

Working as a professional WordPress developer I’ve tried a number of different starter themes, but the common denominator is that you always end up changing most of the theme. This is fine, and I think you should. But the workflow of most of these themes are poor.

I really like creating better workflows for myself and my colleagues. Stuff like grunt and gulp excite me, and I like the challenge of making it work like I imagine things in my head.

Say hello to my little friend!

I love Foundation, Roots (now Sage) and Gulp. And I love them together. Back when I started creating my starter theme, Roots was built solely on Bootstrap (meaning LESS) and it used Grunt. I know that with the newest release of Sage, they’ve taken a huge leap towards becoming framework agnostic. This is awesome, and I’m probably going to be using Sage as the basis for a future version of my starter theme.

The theme is simply called AnunaStart. Because I work at Anunatak and, well, it’s a start for my projects.

Right out of the box, you’ll recognize most of what’s in the olds Roots, but with some changes that has made my developer life easier.

Gulp!

Gulp is friggin’ awesome. You can do so much stuff with it. The sky is the limit. Gulp is the main engine of my starter theme. It builds the CSS, it concatenates the javascript, it grabs my vendor scripts and it watches for changes.

One cool thing about AnunaStart is the file called vendors.json. This file is watched by Gulp, and is added amongst the script files. This is neat if you have an external library you’ve downloaded via Bower (or something else), which you want added. Simply add the paths (relative to the vendors.json) to the files and they are automagically added to the mix.

Roots

AnunaStart is based on Gromf, which is based on Roots. Meaning it’s Roots-Bootstrap-Grunt+Foundation+Gulp. Roots has an awesome theme wrapper, which helps you stick to the principles of DRY; don’t repeat yourself. You do not have to use the get_footer() and get_header() functions in every single one of your templates. I love it!

DOM-based Router

AnunaStart of course ships with my plugin: jQuery DOM Router. This little thing is kinda cool. It fires javascript based on what classes your body has. Read more about it in my blog post about it.

..and loads more

AnunaStart is packed with stuff I use in my everyday development. Off-Canvas Menu, WCAG 2.0 and ACF integration are just the tip of the mountain.

Anunastart is on Github. Check it out. I’ll love to hear your thoughts on it!

A developer with a passion for new technology, agile methods and smart solutions.