Writing
Occasional thoughts on frontend engineering, architecture, and craft.
On Writing UI That Respects Time
Most loading states are an afterthought. Here's how I think about designing for latency in ways that feel respectful rather than apologetic.
UXPerformanceReact
Type-Safe URL State Is Underrated
Search params are mutable, shareable global state โ and most apps treat them like an afterthought. Here's why I now reach for URL state before React state.
TypeScriptTanStack RouterArchitecture
The Component Boundary Is a Design Decision
Where you draw component boundaries in a React tree isn't a mechanical decision โ it's a design decision with real consequences for performance, testability, and team velocity.
ReactArchitectureTypeScript