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.

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

A Frontend Newsletter that you'll love! πŸ’–