frontend
Technical notes on web development, DevOps, and AI integration.
103 articles
- 18:18frontend
The Two-Column Mobile Grid I Took Back
Splitting a 4-column grid into 2 columns made cards cramped on phones. The fix: an embla carousel on mobile, a grid on desktop, a doubled DOM.
#nextjs#react#frontend - 16:29frontend
Switching to a Grid, a Show More Pattern, and One SEO Trade-off
Refactoring a long accordion column into a 3-column grid with Show More lists. The trade-off: sliced points never reach the initial DOM Google indexes.
#nextjs#react#frontend - 16:25frontend
A Certification Badge With No Image Took Down next/image
An optional image field met a runtime component that demands src. The About page went blank. Here is the ternary and fallback UI that fixed it.
#nextjs#typescript#frontend - 02:44frontend
TypeScript Types Never Reach Your JSON, So Write Contract Tests
One missing badge image broke typecheck. A story about type erasure, optional properties, and parametrized contract tests guarding per-locale JSON content.
#typescript#testing#frontend - 14:19frontend
Hardening the Article Embed Pipeline for Agent-Authored Content
The embed pipeline now renders tokens inside <pre>/<code> as literal code, degrades to a fallback on broken payloads, and re-highlights Quarto/Pandoc blocks.
#shiki#nextjs#frontend - 12:46frontend
Two Commits I Reverted: generateSitemaps vs Next 16
Next 16 rejects a sitemap.xml route folder that collides with the metadata convention. I reverted two commits; the old /sitemaps/ rewrite setup was enough.
#nextjs#seo - 01:38frontend
Shiki Code Block Contract and Short Lang IDs
I locked the code-block contract so articles would not break render: short lang ids, explicit Shiki aliases, and malformed blocks rejected before publish.
#shiki#nextjs#frontend - 01:38frontend
Merging HTML Fragments in React ArticleBody
A tiny ArticleBody bug made paragraphs split and spacing drift. The fix was not a parser rewrite, just merging consecutive HTML fragments.
#react#frontend#html - 01:38frontend
Splitting a Next.js Sitemap into 200-URL Child Files
How I split a Next.js sitemap into 200-URL child files, listed them in robots.txt, and what Google actually reads from a sitemap.
#nextjs#seo#vercel