Colophon
How this site is put together, for the three of us who care.
Two sites, one design system. mcallister.ws is the front door and changes about once a quarter; Logical Disconnect is the blog and changes most weeks. They share every token, component and typeface, which is why moving between them should feel like staying put.
Type
- Source Sans 3
- Headings and all running copy, at 19px. A humanist sans with real letterform character, and deliberately not Inter.
- Source Serif 4
- Blockquotes and one pull quote per article. Same superfamily, so the second voice is related rather than contrasting.
- IBM Plex Mono
- Code, dates, badges, status — every piece of metadata. If a string is a fact about a thing rather than the thing itself, it is mono.
Build
- Generator
- A static site generator I wrote in Go. It exists because I wanted one, which is the only honest reason anybody writes another static site generator. It builds both sites from the same content tree and the same design system, which is why they agree with each other.
- Deploy
- Push to
main, a GitHub Action builds both sites and syncs them to S3, and the CDN in front of it gets an invalidation. About ninety seconds from commit to live, most of which is the invalidation. - Posting from the road
- A small iPhone app that began life as a pile of Shortcuts and got out of hand. It writes the front matter, resizes the photograph, and opens a pull request; the Action does the rest. I would call the internals arcane if I had not written them myself. Nearly every postcard here was posted from a train.
- Pages
- Static HTML, generated at build time. No client-side framework; the only JavaScript is the theme switcher, the mobile menu and the stream filter.
- Styling
- One stylesheet of design tokens and one of components, shared by both sites. Breakpoints are container queries.
- Fonts
- Self-hosted woff2. Nothing is requested from a third party on any page.
- Analytics
- None. No cookies, no tracking, nothing to consent to.
Feeds
-
Everything on the blog logicaldisconnect.org/feed.xml
Articles, notes, postcards and build logs, in one stream.
-
This site mcallister.ws/changes.xml
Only when a page here meaningfully changes, which is rarely. The full feed menu is on the blog.