Static blog site generator in one Go binary: Markdown in, self-contained semantic HTML out. No JavaScript, no database, minimal deps.

Cards: make the whole card a single link #18

Merged janantos.tngl.sh
targeting main
Merged opened by and assigned to janantos.tngl.sh
targeting main

A card with a url now wraps its image and body in one instead of linking the title (and image) separately, so the card is clickable anywhere and reachable by keyboard. No JavaScript: an may wrap flow content in HTML5 as long as it holds no other interactive elements, and the existing external-link post-processing still adds target="_blank" rel="noopener" to the single link (image post-processing is unaffected).

  • buildCardsHTML (post) and homePostCardsHTML (build): emit one link around the whole card when it has a url
  • CSS: .card > a becomes a flex column that fills the card; hover and :focus-visible feedback (border/name colour, focus outline on the list item so it survives the card's overflow: hidden) via :has(), consistent with the theme switcher; drop the now-dead .card__name a rule
  • update the card tests, AGENTS.md, README.md and the cards showcase post; rebuild the showcase site

This pull request has no versions submitted yet.