• HTML 65.8%
  • JavaScript 22.2%
  • CSS 10.2%
  • Just 1.8%
Find a file
2026-06-27 20:28:01 +10:00
_includes fix current year link 2026-06-14 13:23:14 +10:00
content popper posting 2026-06-27 20:28:01 +10:00
css fix icon vertical align and add tag to posts 2026-06-14 13:22:26 +10:00
.editorconfig work on style 2024-11-09 16:48:52 +11:00
.gitignore thanks mac 2026-06-14 13:27:26 +10:00
_redirects rename archive to articles, no idea what I was doing 2025-04-13 10:41:58 +10:00
eleventy.config.js make archive most-recent-first 2025-04-13 11:25:06 +10:00
favicon.svg add favicon from feather icons 2025-02-27 10:21:06 +11:00
justfile fix link dump script 2025-05-11 14:53:01 +10:00
package-lock.json add image lazy loading 2025-01-20 12:03:10 +11:00
package.json add image lazy loading 2025-01-20 12:03:10 +11:00
README.md add redirects info to readme 2024-11-18 10:07:16 +11:00

crabmusket.net

Deployment to Cloudflare

  • Created a new project from Github
  • Chose Eleventy preset
  • Set NODE_VERSION=20.18 in environment variables

Development

npm run dev
open localhost:8080/

Features

Notes to my future self:

Redirects from old site

Icons

Content structure

  • Each micro blog post is tagged blog
  • Each long read is tagged article
  • Other tags are used to create the topic pages
  • In several places, the custom except filter is used to exclude blog and article where needed

Topic pages

  • Eleventy's collections are paginated to create one page per tag except the "internal" ones like blog and article
  • Each topic can have its own little explanatory fragment included from _includes/topics

Year pages

  • Blog posts' publication years are automatically shoved into a new collection called blogYears.
  • This collection is paginated to create the year pages e.g. /2024.
  • The withPageYear custom filter selects posts for each year page

just

  • justfile has a script to generate a 'linkdump' post
  • vscode-just can run just commands from the palette, which makes it easy to create a pre-formatted new post with today's date

main.css

  • Something is aggressively caching main.css to 8 days on the client
  • So, if important CSS changes, bust caches by incrementing the date in _includes/main-style.html