3/6/26

I’ve worked on a few large React code bases at this point in my career. They all seem to turn into pretty messy piles of tightly coupled components.

It seems like the patterns React encourages and defaults you into cause a lot of spaghetti. It is possible that there’s not any tool that will avoid this.

It does seem like React components just tend to grow larger and larger over time. There’s a tendency to just try and graft a little hook here and pass a prop there. And before you know it the purpose of a given component is impossible to hold in your head.

I know I found React to be utterly magical when I first learned it after building UIs with JQuery forever. React’s declarative syntax totally obviates whole classes of really annoying problems I used to have.

I still like using React in my own projects. I run into different fundamental problems with React in my personal projects. I think these are derived from a different core part of React. Trying to express games and highly interactive things in a functional and declarative model is very hard.