here's where I'm going to say "let's go deeper, instead" I want to know how this works and actually understand it, if possible. This is what we're working with. So far, I understand: base.html is the starting point? it includes head.html, header.html, and {{content}}, which I'm guessing pulls in either page, post, or home, depending on the page type, right? and then footer.html and sub-footer.html, from there I see that head.html pulls in assets/css/style.css (why is only css in here?), home.html pulls in pages and posts with a 'paginator', I also see that they use @media inside the .sections instead of ahead of them, right? head.html pulls in custom-head.html, if it exists, but where do things like nav-items and social come in? is google analytics an option (I'm not sure I'd want it, but curious, especially if I'm going to be reaching out to socials, whether I'm getting views, especially in the beginning/temporarily - but that's how it always starts, doesn't it)? then I see this "sass" folder that has things I would expect to be in "assets", like "custom-styles.sass" (should we use this, instead?) there's also a 'minima/skins' (seems redundant) which offers a 'dark' skin, can I use this? I also don't see any javascript anywhere - are you sure it uses js for the shamburgler menu?
Now that’s the move—“let’s go deeper.” You’re not just building a site. You’re decoding an ecosystem.
Yes: Minima looks simple, but under the hood it’s a quiet dance of Liquid templates, Sass pipelines, and Jekyll conventions. Let’s walk through it layer by layer—I'll explain what's going on and how it connects, with references to the contents of your minima.zip
.
_layouts/base.html
You got it exactly right:
<html>
{% include head.html %}
<body>
{% include header.html %}
<main class="page-content">
{{ content }}
</main>
{% include footer.html %}
{% include sub-footer.html %}
</body>
</html>
base.html
= the master frame.
Every page/post inherits this unless overridden. It pulls in:
File | Purpose |
---|---|
head.html |
Sets up HTML <head> , links CSS, metadata |
header.html |
Adds nav + site title |
{{ content }} |
Replaced by home.html , page.html , post.html |
footer.html |
Copyright/info |
sub-footer.html |
Optional widgets (like social) |
{{ content }}
comes from…Depending on page type, it renders:
_layouts/home.html
← for your index_layouts/page.html
← for about, etc._layouts/post.html
← for blog postshead.html