From Ag-Grid to shadcn: 9 years of frontend evolution
A whirlwind tour of the frontend stacks I've shipped on, and what each one was good for.
In 2017 I was wiring jQuery into a .NET project. In 2026 I'm composing shadcn primitives on top of Next.js Server Components. Most of what I learned in between still applies — just renamed.
The constants underneath the churn
Frameworks moved. State patterns moved. The thing that didn't move: users care about three things — speed, clarity, and whether the thing did what they asked.