Ship Log

A running log of everything I ship — features, fixes, launches, and updates.

2026.03.22

Mobile nav and theme toggle fix

Added hamburger menu for mobile navigation. Fixed dark/light mode toggle not persisting on Safari and Chrome mobile.

2026.03.22

Homepage restructure

Added featured project spotlight for RAG Academy. Moved deep dives and recent writing into a two-column layout to reduce whitespace.

2026.03.22

New project: CardHive

Added CardHive to the site as a new building project. Local TCG marketplace for buying, selling, and trading cards with collectors in your city.

2026.03.21

RAG Academy launched

Launched RAG Academy, my first open source project. An AI-guided course that teaches RAG by having you build it. Added project landing page with GitHub repo link.

2026.03.21

New blog post: "Announcing RAG Academy, My First Open Source Project"

Why I'm building an open source, AI-guided RAG course. Covers the problem with outdated tutorials and vendor lock-in.

2026.03.21

RAG from Scratch guide marked complete

The RAG from Scratch deep dive is now marked as complete with all sections finished.

2026.03.20

AI chat widget, GoatCounter analytics, favicon

Added AI chat assistant to the homepage, GoatCounter for privacy-friendly analytics, and updated the site favicon.

2026.03.20

Deep dives section and RAG from Scratch guide

Added a new deep dives/guides section to the site. Published the RAG from Scratch guide covering chunking, embeddings, vector search, and generation.

2026.03.19

Site redesign

Dark-first design system, lab page, unified app landings, and SEO overhaul.

2026.03.18

New blog post: "Stop Sprinting. Start Learning."

On sustainable pace, deep work, and why shipping fast is not the same as moving fast.

2026.03.10

New blog post: "CLAUDE.md Rules vs Real Guardrails"

How instructions in CLAUDE.md actually influence agent behavior, and where they fall short.

2026.03.04

New blog post: "Four Claude Code Features You Probably Aren't Using"

Worktrees, multi-agent workflows, slash commands, and memory files.

2026.03.03

New blog post: "Reducing App Store Rejection Friction"

Lessons from shipping 9 apps through App Store review, and automating the checklist.

2026.02.12

New blog post: "Building RAG Locally to Actually Understand It"

Running retrieval-augmented generation on local models to learn how it works end to end.

2026.02.05

New blog post: "Claude in Xcode: A Developer's First Impressions"

First week using Claude Code for SwiftUI development — what worked, what didn't.

2026.01.27

Panku Records: Launched B (TCG+ Events)

Added the B event listing feature to pankurecords.com — browse, filter, and discover TCG+ events.