I’m not sure if I never knew this, or if I had just forgotten, but I re-learned how Jekyll sets up theme customization.


So the default theme is called Minima. It’s great!

There’s not much you really need to do to make it look good (but you’re free to be fly). But if you do, here’s what you should know. At least, according to this complete beginner etc etc


This file should come with the default Jekyll blog. Mine basically contains

# Only the main Sass file needs front matter (the dashes are enough)

$content-width: 640px !default;
@import "minima";

You can override any important variables used in Minima, like $content-width, so that’s where I would do that, if that’s all I wanted to change. Augment. Replace variables. That kind of thing.

Overriding a specific file

So now you just copy a file out of the framework, change it up, and put it in the “same” place inside your blog, and it’ll pick up your version instead of the library/gem version.

This is probably where you start using Jekyll in Anger, so to speak, where you find some weird CSS rule concerning .post-meta in Inspect Element and you search your whole blog and don’t see any code at all involving .post-meta.

The library/framework code is not going to be in your blog directory, like it might in a node.js project where everything (and I mean everything) is in node_modules.