Skip to content

Paused

/style

Every element this blog can render, in one place. I check it after changing the CSS or messing with the layout, and you're welcome to have a look too.

Table of contents

Open Table of contents

Palette

light

  • --background#dde4c3
  • --foreground#0f380f
  • --foreground-soft#2b4a28
  • --accent#306230
  • --accent-foreground#dde4c3
  • --muted#c8d3a2
  • --muted-foreground#306230
  • --border#8bac0f
  • --pea#8bac0f
  • --pixel-shadow#306230
  • --led#c8231b

dark

  • --background#142a12
  • --foreground#d3dfb0
  • --foreground-soft#b5c495
  • --accent#9bbc0f
  • --accent-foreground#142a12
  • --muted#253f22
  • --muted-foreground#9bbc0f
  • --border#306230
  • --pea#306230
  • --pixel-shadow#0b1a09
  • --led#e0392f

Typography

Body text is set in IBM Plex Mono, titles and small labels in Press Start 2P. This paragraph is long enough to wrap a few times, so line height and measure can be judged at a glance on both a phone and a wide screen.

.pixel-title

/blog

.pixel-label

Recent posts

h2

Heading level 2

h3

Heading level 3

h4

Heading level 4

h5
Heading level 5
h6
Heading level 6

Inline elements

A link, bold, italic, both, strikethrough, inline code, Ctrl + C, DMG, highlighted text, H2O and E = mc2. A footnote reference sits at the end of this sentence.1

Lists

  1. An ordered list
  2. With a second item
    1. And a nested one

Quotes and callouts

A plain blockquote. It can run over several lines and still read as one quotation.

Note

A note, for context worth knowing.

Tip

A tip, for an optional shortcut.

Important

Something the reader shouldn’t miss.

Warning

A warning, for when things can go wrong.

Caution

A caution, for when they will.

Table

ModelYearScreen
DMG19894-shade green
Pocket19964-shade grey
Color199856 colours

Code

type Greeting = { name: string };

export function hello({ name }: Greeting) {
  const message = `Hello, ${name}!`; 
  console.log(message);
}src/hello.ts
function boot() {
  return "Nintendo"; 
  return "Nintendo®"; 
}
pnpm install
pnpm run build

Long lines scroll sideways instead of wrapping:

pnpm exec astro build && pnpm exec pagefind --site dist --output-subdir pagefind --glob "**/*.html"

Collapsible

Click to expand

Hidden content, shown on demand.

Image

A calm blue lake under a clear sky, wooded hills on the far shore

Until an image arrives a pixel block blinks in its place, and a cross marks one that never does:

loading
failed

Diagram

How a post gets published: the Obsidian vault and src/content/posts sync both ways through Unison every minute; a git push runs astro build on Netlify, which makes the pages, share cards and search index; sirlisko.com/blog proxies to the Netlify site

Share card

The preview shown when a page is shared. Posts get their own, with the post title on the screen.

The blog's share card: a Game Boy with the site title on its screen

Maps

Seven Sisters
Distance22.7 km
Elevation+783 m
Time7h 28m

Before Leaflet loads, and if it never does:

loading
failed

Components

<Card>
<Datetime>
Updated
<LinkButton>
PrevNext
.menu-cursor
hover
.pixel-link
github
default
hover
.pixel-icon
default
hover
.pixel-button
More posts
default
hover
pressed
.pixel-rule

Post page

The parts below every post. The back to top button is live on this page too, once you scroll.

<ReplyByEmail>

Spotted something off on this page? Reply via email


Footnotes

  1. And this is the footnote. ↩