Notes on building software
Practical write-ups on Node.js, React, Next.js, TypeScript, architecture, and performance. Separate from the client work on this site.
Event-Driven Architecture: CQRS and Event Sourcing Explained
A practical guide to event-driven architecture for scalable systems. Learn how Command Query Responsibility Segregation (CQRS) and event sourcing decouple writes from reads and create audit-ready domain models.
Node.js Worker Threads: Offloading CPU-Intensive Work
Node.js is single-threaded by design, but Worker Threads let you parallelize CPU-heavy tasks without blocking the event loop. Learn when to use workers, how to structure thread pools, and how to avoid common pitfalls.
GitHub Actions: Building Production-Grade CI/CD Pipelines
From lint and test to staged deployments and rollback strategies, learn how to design secure, fast GitHub Actions workflows for Next.js and Node.js applications in production environments.
React Server Components: A Deep Dive into the Hybrid Model
React Server Components blur the line between server and client rendering. Understand the RSC payload, serialization boundaries, and how to architect apps that ship less JavaScript without sacrificing interactivity.
Optimizing Largest Contentful Paint (LCP) for Faster Pages
LCP measures when the largest visible content element renders. Learn diagnostic techniques, image optimization strategies, and server-side fixes that move your Core Web Vitals from red to green.
Next.js App Router: Partial Prerendering and Streaming Explained
Next.js 15+ combines static shells with dynamic islands through Partial Prerendering (PPR). Learn how PPR, streaming, and the App Router change how you architect fast, personalized pages.