Adding a Related Posts Section to a Next.js Blog
A simple metadata-based scoring algorithm that surfaces related articles using shared categories and tags. No ML, no full-text search — just weighted scores and existing helper functions.
All blog posts
A simple metadata-based scoring algorithm that surfaces related articles using shared categories and tags. No ML, no full-text search — just weighted scores and existing helper functions.
Individual category and tag pages existed, but there was no way to browse them all. The interesting part: zero new data-layer code was needed — existing helper functions composed directly into new pages.
Each blog post now gets a unique OG image at build time using Next.js's opengraph-image.tsx convention and Satori. The biggest gotcha? Satori only supports inline Flexbox styles — no Tailwind, no className.
I added a hamburger menu, responsive spacing, and touch targets to a Next.js blog. The real lesson was discovering that CSS backdrop-filter silently turns parent elements into containing blocks for fixed-position children.
How I replaced a broken 3-stage build pipeline with @serwist/turbopack's Route Handler approach — finally making precaching work and unlocking Turbopack as the default bundler.
A deep dive into the architecture behind shinyaz.com — why I chose Velite over Contentlayer, how I handle bilingual content without an i18n library, and the design decisions behind a minimal, monochrome developer blog.