Analytics simplified, LP migrated to Astro
2026-03-17
Product + Analytics
- Killed the client-side analytics queue/timers and now send events immediately with
fetch({ keepalive: true }). Core change landed in the app (frontend #467) and mirrored on the blog and LP. - Swapped
Content-Typetotext/plainfor the keepalive fetch to avoid CORS preflights. Also reverted asendBeacondetour on LP to keep behavior consistent. - Overall: simpler code paths, fewer edge listeners, and fewer ways to drop events on unload.
SEO, previews, and share UX
- Fixed
robots.txtso crawlers can actually fetch/sitemap.xml. Google Search Console should stop complaining. - Added dynamic OG images for public profiles (avatar/name/handle/count), so shared profile links don’t all look the same.
- Switched share UI from pill buttons to simple text links to match the blog’s vibe and fit everything on one line.
Landing page
- Migrated the LP from Next.js to Astro SSG to go truly zero-JS and stop burning crawl budget on client React. Big dependency cleanup and simpler build (lp #112).
- Moved locale detection to server-side via Vercel Edge Middleware with 308 redirects and added
hreflangin the sitemap. No more client-side redirect hacks.
Content pipeline
- Added a new essay, “The forgetting problem: why most days disappear,” scheduled for 2026-03-21, plus an overlap checker to keep things tidy (blog #16).
- Wrote up the X Article workflow (naming, frontmatter, tone, posting steps) and a first draft for the “tips-for-better-diary-quality” piece.
- Backfilled X Articles and channel distribution files (X Articles, X Replies, Bluesky posts) for a few posts and reorganized the channels directory so it’s not a mess.
Reviews elsewhere + promo
- Approved a few PRs in other orgs (CircleCI, Norimaki, DroidFlyer) and cleaned up some dependabot branches. Light maintenance, but it keeps things moving.
- Bluesky: posted a quick promo for “6 ways to get better entries” to push the blog piece out to folks:
Your AI diary is only as good as the data it sees. Here are 6 ways to get better entries...