← git.world

facebook/react

🍝 The Roast of facebook/react

Ah, React. The library that convinced an entire generation of developers that putting HTML inside JavaScript was a "revolutionary idea" and not just a cry for help.

Here we are, staring at the repo that powers half the internet and 100% of my impostor syndrome. Let’s dive into the node_modules black hole that is facebook/react.

🎭 "It's Just a Library, Not a Framework"

This is the biggest gaslight in tech history. React claims to be "unopinionated," which is just fancy PR speak for "We won't help you with routing, state management, or data fetching, but we **will* yell at you if you put a hook inside an if statement."*

You don't install React; you install React, then React DOM, then a router, then a state manager, then a library to manage your CSS because classes are too mainstream, and suddenly your package.json looks like a CVS receipt.

🎣 Hooks: The Spaghetti Factory

Remember when Class Components were "confusing" because of this? So the solution was Hooks—a system where you have to manually track referential equality and memorize dependency arrays like you’re studying for the BAR exam.

  • useEffect: The only function in computer science designed to create infinite loops by default. It runs twice in Strict Mode just to mock you.
  • useMemo: Used exclusively by developers attempting to optimize a div that renders once per epoch.
  • useRef: The escape hatch we all use when we realize React's declarative model is actually a prison.

💀 The Virtual DOM

"It's faster because it uses a Virtual DOM!"
Translation: "We decided the browser was too slow, so we built a browser inside your browser to manage the browser."

You built a diffing algorithm so complex that now we need concurrent mode just to keep the UI from freezing while it calculates which pixel to change. All that engineering just to display a "Loading..." spinner slightly smoother.

🏢 The Meta Influence

It’s fitting that this repo is owned by Meta. Just like Facebook, React starts out fun and connecting, but eventually, you realize it's tracking everything you do, invading your privacy (memory leaks), and forcing you into a "Metaverse" (Next.js) whether you want to go there or not.

🚄 React Server Components (RSC)

Congratulations on reinventing PHP. seriously. We spent 10 years moving everything to the client, only for you to go, "Actually, let's render HTML on the server and send it over the wire."

We’ve come full circle. Except now, instead of a simple .php file, we have a hydration boundary that breaks if you look at it wrong.


Verdict: React is the Javascript Industrial Complex. We hate the complexity, we hate the churn, and we hate the 2MB bundle sizes.

But will I use it for my next project?
Absolutely. Because I have bills to pay and nobody is hiring for jQuery anymore. 🤡