Building with React 19: What Actually Changed
React 19 shipped with compiler optimizations, Actions, and server components stable. Here's what changed in my workflow.
React 19 has been running in production for a few months now. Here’s what I’ve actually shipped with it.
The Compiler Changes Everything
The React Compiler eliminates the need for useMemo, useCallback, and React.memo in most cases. I removed about 40% of the optimization boilerplate from our codebase. The compiler handles it automatically.
Actions Are the Right Abstraction
Form actions in React 19 finally make server mutations feel natural. The useActionState and useOptimistic hooks handle the loading/error/success cycle that I used to build manually every time.
What I’m Watching
Server Components are stable but the ecosystem tooling is still catching up. The patterns for data fetching are cleaner — fetch once on the server, stream to the client — but you have to think differently about component boundaries.