foldout
Free + Pro Blog template

Marginalia — blog and magazine template

A reading-first blog in plain HTML and one stylesheet: 18 px serif at a 66-character measure, notes that sit in the margin on wide screens, article, archive and author layouts. No build step, no JavaScript, system fonts only, dark mode redrawn not inverted. Newsletter page and 404 in Pro.

  • HTML5
  • Plain CSS
  • No build step
  • No JS
  • Dark mode

Free and Pro

Pro

$19

Every page, the Pro-only pages, the source files, no attribution, and 12 months of updates and email support.

Home page, plain CSS
yes
Article, archive, author
yes
Newsletter + 404 pages
yes
Partials and page assembler
yes
Dark mode (follows system)
yes
Credit link in footer
not required
Updates and support
12 months, email

Free archive

  • index.html
  • assets/css/style.css
  • README.md · LICENCE.txt

Pro archive

  • index.html · article.html
  • archive.html · author.html
  • newsletter.html · 404.html (Pro only)
  • assets/css/style.css
  • src/ · build.mjs (optional)
  • README.md · LICENCE.txt (Pro)

Licence

Use it in unlimited personal and commercial projects, including client work.
Do not resell the template itself, alone or in a bundle.

Full licence terms →

Look at the article page first

That’s where readers spend their time. Marginalia’s article page is an 18 px serif at a 40-rem measure — about 66 characters — with 1.6 leading, a lead paragraph, a byline, and prose styles for figures, block quotes, code and lists that hold up past the first screen. The type scale is small on purpose: a blog has three levels of heading, not six.

Notes in the margin

The name is the feature. An <aside class="note"> placed after a paragraph floats into the right margin above 72 rem and renders inline with a hairline below it. Reference and note link to each other, so keyboard and screen-reader users can jump and return. No JavaScript, no footnote plugin.

Nothing loads

System fonts only — Iowan Old Style on Apple devices, Palatino or Georgia elsewhere — so the page is one HTML file and one stylesheet with zero requests after them. Swap in a webfont if you must; the README says how to do it without a flash of invisible text.

Porting to a generator

Everything inside .prose is plain semantic HTML, which is what Markdown produces. The header and footer are two partials; the assembler is optional. Astro, Eleventy, Hugo and Jekyll all take this page as a layout with no changes to the CSS.

Compatibility

  • Chrome / Edge 109+
  • Safari 15.4+
  • Firefox 115+
  • iOS 15+
  • Android 10+

Read before you build

Version history

  • 1.0.0 2026-09-11

    First release

  • 14 KB
    home page + CSS
  • 0
    fonts loaded
  • 0
    JavaScript
  • 66
    characters per line

Related templates

Grove — single-column portfolio template preview

A portfolio for a few pieces of work worth a story: work list, two case-study layouts, about, plus a contact page with an enquiry form and a 404 in Pro. Plain HTML and CSS, no build step, no JavaScript, dark mode follows the system.

Bistro — restaurant website template preview

A restaurant site in Tailwind: menu with anchor sections, table booking form, gallery, hours and contact, plus a private-dining page and a 404 in Pro. Schema.org markup for the venue and the menu.

Fathom — agency website template preview

A design-and-engineering studio site that leads with the case study: results as big numbers, a 'what didn't work' section, sticky team and stack. Big type, one accent colour, no logo soup. Work, services with prices, team, contact, plus careers and a 404 in Pro.