I am proud, excited and a little bit nervous to announce the release of Musket.
Musket is a web development and workflow framework for WordPress and Genesis.
It consists of a Genesis child theme, core functionality plugin and DesktopServer Blueprint for building robust, accessible, internationalised websites in quick time.
It incorporates Sass (using the Bourbon mixin library and Neat grid framework) and utilises Gulp for automating a host of tasks such as:
- Reloading your browser whenever you make changes to the code
- Compiling Sass into CSS and minifying it
- Creating a POT file from your translatable strings
Not sure what all of that means? The beauty of Musket is that it takes care of things you know you should be doing even if you’re not sure how to do them. Jump in at the deep end and let Musket take care of them, then gradually work your way up to understanding what exactly it’s doing.
Who is Musket for?
In my opinion, WordPress’s sweetspot is as a highly customisable CMS for people working in client services. The freelancers and small to medium agencies who are building new sites for clients day in, day out. And these are the people and businesses Musket is designed to help.
It’s an opinionated framework that removes much of the up-front decision-making and boilerplate set-up that is typical of starting a new WordPress site. And once you’re developing, it automates many tasks that would either be too time-consuming or simply outside of budget. The result of this is that your time is freed up from the mundane, and can instead be spent adding value to your client.
What do I mean by that?
Imagine you’re preparing a proposal for a client with, say, a medium-sized budget, and that client is in talks with a couple of agencies. The other agency might decide that the client’s budget doesn’t run to making the site accessible and / or internationalised (translatable).
Musket is accessible straight out-of-the-box. And as long as you use the standard WordPress translatable string functions as you build out the site, Musket will automatically ensure your site remains translatable with no intervention on your part. You can add value to your client in your proposal, without adding cost. Upping the likelihood that it’s you that gets the gig.
Musket is also great for theme re-sellers. Do you run your own market-place of custom Genesis child themes? Musket comes with a “dist” Gulp task. Type
gulp dist at the command line and your child theme will be stripped of all extraneous .dotfiles and dev files and zipped up into a ready-to-distribute theme package.
Is Musket too technical for me?
It’s hard to describe all the features in Musket without making it sound technical (a good reason why we should all be selling benefits not features). But if you’re a designer or developer working in client services and already use the (developer-centric) Genesis framework you know enough to use Musket.
Yes. You have to use Sass to use Musket. But if you don’t already know Sass, Musket is a great way to get started with it. You have an easy to understand directory and file structure set up for you so you can begin by just changing variables and editing the styles that are already in place.
Yes. You will need to use the command line. But the only commands you really need to know are:
npm install– Used once when you start a new site to install some dependencies
gulp– Used to start up Gulp, which loads the site into a browser, compiles our Sass in the background and more (see above)
That’s it. Seriously.
If you get comfy with the command line, there are other things Musket will let you do, but those two commands are all you really need.
What Musket is not
Musket is not an alternative to something like Bedrock.
Musket does not hack WordPress into a sub-directory or toy with its architecture in an attempt to make it more “enterprisey” or “app-like”.
Running a highly customised version of WordPress in that manner is fine if you spend every day hacking on the same large-scale web site and can afford to roll with the punches every time the core is updated in a way that doesn’t sit well with your customisations.
But when you’re working in client services you don’t have that luxury. You need to move onto the next site and be confident that those previous sites will remain solid through ensuing WordPress updates and that any maintenance that is required is easy to apply.
Besides which… if you’re building a large-scale, highly custom site or web app, why the heck are you using WordPress? You should be using Meteor (or at the very least Rails).
But you’re not… you’re in client services, so go check out Musket 😉
Any more questions, tap me up on Twitter.