Articles
2025: I Shipped 3 OSS Projects — “This Was Actually Fine”
Introduce is-kit, changelog-bot, and divider as my open source projects in 2025.
I Tried Reading React's Source Code and Flow Beat Me Up. So Let's Learn 🚀
Flow basics and type checking for reading React source code. Such as mixed, empty, and more.
Generate CHANGELOG.md Automatically 🤖
Introduce changelog-bot, a tool that automatically generates a polished CHANGELOG.md from your release notes! 🚀
Understanding Variance in TypeScript: Flow, Covariant, Contravariant, Invariant, Bivariant
A deep dive into variance concepts in TypeScript and their practical implications
Escaping the Forest of if Statements🌲
Building Logical Type Guards with is-kit
Compose Type Guards Like Building LEGO Blocks: Reusable Logic with is-kit
Design TypeScript type guards as reusable, composable building blocks using is-kit
Introduce my favorite frontend library: mise / Typedoc / tsd
An introduction to my favorite frontend libraries and their use cases
Introduce is-kit
An introduction to the is-kit library and its features
Technical Debt Grows from “Just for Now” — A Real-World Code Walkthrough
Understanding the fundamentals of technical debt
How Does Technical Debt Pile Up? — Looking at “Just for Now” Examples (Structure Edition)
Analyzing the structure of technical debt in software projects
What the Heck is Technical Debt?
Examining code-level technical debt and its implications
Introducing `divider`
A handy utility to split strings and arrays
FSD * LangChain * Remix * AI portfolio site
How to build a portfolio site using FSD, LangChain, Remix, and AI
FSD (Feature-Sliced Design) overview
An overview of Feature-Sliced Design principles

