Is Remix better than Next.js?


Hey friend,

I gave a talk at React Rally ↗️ on React Framework Showdown and compared Next.js, Remix and Astro. I didn't hold back and gave some hot takes 🌢️. It can be nerve-wracking to give your opinions when you have so many folks in the audience actively working on the frameworks.

The talk went really well. I'll let you know once the recording is out. But today's newsletter will focus on parts of the talk.

-> I forgot to hit this newsletter's schedule button while travelling, so that's my bad. I'm here now, so I will make it up to you with more content than ever.

🍿 Is Remix better than Next.js?

Here's the thing: I have a lot of content on Next.js, a course coming up on Next.js ↗️, workshops, and a YouTube channel filled with Next.js content.

But I need to be fair and square if a particular framework is better, so let's compare the two in this post.

Here's why,

It unifies the client and server with web standards so you can think less about code and more about your product.

As Remix focuses on web standards, it uses native methods (POST, PUT, DELETE, PATCH) to handle forms instead of JavaScript. This helps reduce the overhead of creating custom docs that are harder to maintain as web standards change.

You can use Remix to create a standard CDN-hosted SPA or easily migrate that to SSR hosted on any server.

What makes Next.js Special?

Next.js provides automatic performance optimizations, server components, and server actions. Still, more importantly, it offers different data fetching methods, such as state site generation, server-side rendering, incremental static regeneration, and more.

Since Next.js has been around for a long time, the ecosystem has grown quite a bit compared to Remix, which means there are more production apps on Next.js than on Remix.

If you love React Router, then you'll love Remix.

The majority of the work a framework does is to handle different routes. Now, after upgrading to React Router v7, you also use Remix.

This is impressive since there are millions of downloads for React Router so this was a great strategic decision.

Is Next.js better than Remix?

Well, it depends πŸ˜‰.

If you are looking for granular caching controls with different data fetching mechanisms and are okay with deploying your apps with Vercel or self-hosting them with Docker, then Next.js is great. Plus, the ecosystem around Next.js is massive.

Comparatively, if you are looking to align more closely to the web standards and are already using React Router, then Remix is a better choice as it's an instant upgrade.

I will create a YouTube video on the same topic, so check that out.

🀫 Latest Frontend News

Tanner is working on a new framework known as the TanStack Start ↗️. If you have used React Query, aka the TanStack query, before, this one gets better.

Would you like to deploy your Next.js apps anywhere? Well, OpenNext is here for it ↗️. OpenNext takes the Next.js build output and converts it into packages that can be deployed across various environments.

​From Web to Native with React ↗️ explains how to seamlessly transition from web development to native apps using React and Expo.

​Diving deep into Git ↗️ - its use cases and advanced techniques.

You can generate personalized tabloids quickly and easily. ​Learn more here ↗️​.

Supabase has announced a new app ↗️ which lets you spin up an unlimited number of Postgres databases directly in the browser and let AI build your schema, aka In-browser Postgres, with AI chat.

​This is an underrated feature in Next.js ↗️

Enable `experimental.typedRoutes` in Next Config. You can prevent typos and other errors when using next/link, improving type safety when navigating between pages.

​

​What’s coming next in ESLint ↗️, Writing lint rules has never been easier! Here are a few exciting updates,

  1. Introduction of Language Plugins: ESLint is becoming language-agnostic, allowing it to lint JavaScript and other languages like JSON and Markdown.
  2. Core Rewrite: ESLint is undergoing a complete core rewrite to address technical debt, add modern features, and support a more modular and composable API.
  3. Modern Package Standards: Future-proofing ESLint and making it more adaptable to various JavaScript runtimes.

​Astro 4.3.3 is out ↗️,

Here are three important updates regarding upgrading Astro:

  1. Upgrade Command: You can run npx @astrojs/upgrade to upgrade everything together.
  2. Actions will now redirect to the route specified in your action string on success and back to the previous page on error.

πŸ’– Weekly Youtube Videos

Check it out and subscribe to my channel ↗️ for more Frontend, Leadership and Career Development content.

Learn Zod in 5 minutes
(yes 5 minutes)
​

video preview​

You're accidentally leaking data w/ Server Actions

video preview​

What do you think of today's Newsletter? Simply click on one of the links below.

​πŸ”₯ 😐 πŸ‘Žβ€‹

Ankita Kulkarni

Join 6000+ subscribers reading by weekly personalized Newsletter that helps developers level up their skills through weekly Frontend and Leadership Snacks. You get a deep dive into a Tech topic, Actionable tips to excel in your career and a toolbox!

Read more from Ankita Kulkarni
video preview

Hey friend, Many of you told me that you don't have time to go through the Next.js Hot Tips course that teaches you the best practices of building Next.js apps, which is why I've compiled this cheat sheet to give you. Grab the free Cheatsheet 🎁 As a special bonus, you can grab the cheatsheet for free here ↗️. It would not be fair if I don't share this deal I'm running on my site. The Modern Full Stack Next.js Course is having a Black Friday sale 🎈 (along with Purchase Power Parity Pricing)...

saying No

Hello Reader, As an Engineering leader, you are going to get requests all the time. So you need to prioritize how you are going to manage that. According to a study by McKinsey, leaders who set clear priorities for their teams see a 25% increase in overall productivity. You might have to say β€˜no’ to your direct team or product leaders or might have to say no to priorities. In Leadership, saying no means 'not right now', but let's work together to figure out 'when.' While setting priorities,...

Hello Reader, So, React got really confusing... πŸ˜… Remember when things were way simpler before these Meta frameworks came along. Even the React docs recommend to use a Meta framework and Next.js was the recommended one for the longest time. Now, Next.js has not just one but *TWO* Routers. Not to mention the overwhelming number of updates between Next.js versions as well as breaking changes to keep up with. I don't blame you if you are frustrated. After 15+ years of building and scaling apps...