Astro article badges from Vercel Web Analytics — resolved in the build, shipped as static HTML
How this Astro blog badges its most-read articles: one Vercel Web Analytics query during the build, summed across three locales, baked into static HTML.
How this Astro blog badges its most-read articles: one Vercel Web Analytics query during the build, summed across three locales, baked into static HTML.
Adding a shared like counter to a fully static Astro site: one non-prerendered route, Upstash Redis key design, and the CI bugs that verifying it cost.
Why width:100% blurred a 256px screenshot in Astro, and how a native dialog made every diagram readable on a phone. Seven measurements corrected the design.
Pagefind warned about missing stemming for Japanese and Chinese on every build. The real defect was a query and index tokenizer mismatch returning wrong pages.
Share buttons in Astro built from intent URLs: a different target set per locale, a sticky icon rail on wide screens, and the endpoint drift found on the way.
Follow-the-reader scrolling, a shared rail, and the ::details-content box that silently ate a mobile max-height in an Astro table of contents.
Adopting Expressive Code in Astro 7: filename tabs, per-theme file icons, a Sätteri processor trap, and 97 fences Shiki was reading as a language name.
Why this trilingual Astro blog has no CMS: the directory layout images forced, MDX over Markdown, and a tag registry standing in for foreign keys.