Engineering in the Open
Raw technical breakdowns from building a universe of Micro-SaaS apps. Bugs, architecture decisions, and the stuff nobody writes about.
claude-mem: Persistent Agent Memory Without Black Magic
A practical autopsy of how claude-mem works with Codex, MCP, hooks, local storage, and why enabled config does not always mean a plugin is loaded.
Read article →Spec-Driven Development: Giving an Agent-Powered Repo a Real Memory
A practical guide to OpenSpec, GitHub Spec Kit, and how to organize durable product memory, agent workflows, and code in an AI-assisted monorepo.
Read article →Maestro + Expo: The Real Gotchas Guide
Mobile E2E testing isn't hard. It's brutally environment-specific. A deep dive into every edge case we hit writing Maestro tests for an Expo app on iOS.
Read article →Elevating UX: From Primitive Modals to Modern Bottom Sheets
The standard React Native Modal is holding your app back. Here's why the backdrop-slides-up problem happens and how Gorhom's BottomSheetModal fixes it with decoupled spring physics.
Read article →Unraveling the 'Invalid Hook Call' in Monorepos
React's most notorious error, dissected. How a misplaced devDependency in a Yarn Workspace creates two React instances that silently destroy your hook dispatcher.
Read article →Anatomy of an 'Invalid Hook Call' in Monorepos: React's Silent Killer
How a devDependency in a shared Yarn Workspace package creates a phantom React instance that silently breaks your hook dispatcher — and the exact fix.
Read article →