$ cat blog/*.md
Blog
Thoughts, project notes and occasional deep dives.
Featured Post
Building a Unified Activity Feed Without Faking Freshness
How this site combines dated GitHub and Spotify events with honest Steam summaries, source-level caching, and partial-failure handling.
All Posts
12 results
Building a Unified Activity Feed Without Faking Freshness
How this site combines dated GitHub and Spotify events with honest Steam summaries, source-level caching, and partial-failure handling.
nextjsgithubspotifysteamcaching4 min readOpenCaching Steam Data with Prisma, Carefully
A practical walkthrough of this site’s Steam aggregation, memory and SQLite caches, refresh route, fallbacks, and API limitations.
nextjssteamprismasqlitecaching5 min readOpenBuilding a Terminal Command Palette in React
How this site turns navigation, blog search, themes, and achievements into an accessible terminal-style command palette.
reactnextjsaccessibilitytesting5 min readOpenBuilding a Static Markdown Blog Pipeline
A code-level tour of this site’s Markdown parsing, static post generation, search, reading time, feeds, and dynamic social images.
nextjsmarkdownstatic-generationseo5 min readOpenIntegrating GitHub Metrics Without a Client SDK
How this portfolio uses lib/github.js, cached Pages Router API routes, and SWR to show GitHub profile and repository data.
githubnextjsapi-routesswr4 min readOpenBuilding the Grief to Action Platform
A careful retrospective on the goals, workflow, security boundaries, and open questions behind an AWS-hosted annotation and conversational-agent project.
awsannotationchatbotplsql4 min readOpenCollaborating on EasyTrip: Lessons from a Team Build
A source-grounded retrospective on EasyTrip, a course-team Flask application for creating and managing travel itineraries.
teamworkpythonflasktravel3 min readOpenPackaging a Data Science Toolbox with Docker
A source-grounded look at a course project that used Docker Compose and a Python launcher to collect common data science tools.
dockermicroservicespythondata-science4 min readOpenDesigning the Current Portfolio Architecture
A grounded tour of this terminal-inspired Pages Router portfolio: static Markdown, cached API integrations, SWR, shared UI, and dynamic OG images.
nextjsarchitectureswrtailwind4 min readOpenStatic Generation and Dynamic Data in This Portfolio
How this Pages Router site combines a statically generated Markdown blog with cached API routes and SWR for changing portfolio data.
nextjsssgapi-routes4 min readOpenHow This Site Pre-renders Its Blog
A repository-level look at how the Pages Router builds this Markdown blog with gray-matter, remark, getStaticProps, and getStaticPaths.
nextjsssgmarkdown4 min readOpenHello World, Revisited
A retrospective on the site that began in 2022 and grew into a terminal-inspired Next.js portfolio with a real blog, projects, and live data.
portfolioretrospectivenextjs3 min readOpen