Global Types for Typed Remix Apps
Optimize Remix.run apps with global types for smooth version transitions, runtime changes, and easy updates using a single declaration file
Decoupling data-fetching from rendering introduces some complexities if you want to lazily load your route components. Check out how the newly introduced `route.lazy()` method helps solve this to keep your app bundles small and your UX snappy!
An objective comparison between Remix and Next.js
Remix takes the idea of “one-way data flow” and extends it across the network, so your UI truly is a function of state: from the client to the server and back again.
“The edge” isn’t just about static assets anymore. It’s increasingly becoming a place for dynamic assets resulting from compute. Remix is taking full advantage of this next generation of edge computing.
The web ecosystem can feel like it moves too fast sometimes. We're sensitive to that at Remix so we've designed it with your future in mind. Get good at Remix, get better at the web.
We've introduced the concept of future flags to give you a smooth upgrade path for your Remix app.
A new package helps you upgrade from React Router v5 to v6 incrementally