Executando verificação de segurança...
9

Por que troquei Next.js por Remix nos ultimos projetos.

Nos projetos mais recentes, decidimos experimentar o Remix. Resultado? Foi a melhor escolha que eu poderia ter feito — pra esses casos em específico. E não, não abandonei o Next: ainda uso em outros projetos e ele continua sendo excelente escolha para muitas coisas.

🧩 O problema

No projeto em questão, eu precisava:

  • Tempo de resposta extremamente rápido (SEO e UX importavam)
  • SSR consistente, sem depender de cache externo
  • Redução no bundle JS do frontend
  • Simplicidade na lógica de formulários e requisições

Com Next.js, comecei a me bater com:

  • Várias formas diferentes de fazer SSR (getServerSideProps, API routes, app router, RSC…)
  • Cache complicado e não nativo
  • JS demais sendo enviado pro cliente
  • Requisições duplicadas (frontend chama API interna que chama DB)

🌱 A virada com o Remix

Troquei pra Remix e o que encontrei foi:

  • Loaders e actions claros, sem API interna duplicando chamadas
  • Streaming SSR real, direto do Node
  • Cache nativo com headers, sem configurar CDN
  • Zero JS por padrão (ideal pra páginas estáticas ou públicas)
  • Roteamento 100% baseado em arquivos (sem confusão)

🛠️ Exemplo real: formulário de contato

Com Next.js (pages):

// pages/api/contact.js
export default async (req, res) => {
  if (req.method === 'POST') {
    await db.save(req.body)
    res.status(200).json({ ok: true })
  }
}

E no frontend, fetch manual com fetch('/api/contact', { method: 'POST' })
Com Remix:

// app/routes/contato.jsx
export const action = async ({ request }) => {
  const data = await request.formData()
  await db.save(data)
  return redirect('/obrigado')
}

E o formulário usa <Form method="post">, sem JS adicional. Mais limpo, direto, performático.

🚀 O que ganhei

  • Site mais rápido

  • Código mais limpo

  • Menos dependências e configurações

  • SSR sem confusão

  • Redução de JS enviado ao cliente

⚖️ Ainda uso Next.js

Não estou aqui pra dizer que Remix é melhor que Next.js em tudo.
Uso Next.js em outros projetos, principalmente quando:

  • Preciso de image optimization embutida
  • Quero usar o ecossistema Vercel, apesar de Remix também permitir.
  • Tenho time que já domina o app router

Remix não é uma bala de prata. Mas pra projetos onde performance, controle total de SSR e simplicidade de código importam... ele brilha.

Carregando publicação patrocinada...
2

Gosto mto de React (usavamos React+Vite pro front e Laravel como API... não era Inertia, só React msm), e ai o pessoal da empresa decidiu mudar pra Next e a lerdeza do ambiente local me tira do sério... 10s pra iniciar, ai pra cada tela nova q você visita mais uns 10, 15s... Sei que tem turbopack mas msm assim continuava lento. Eu presumiria que é algma coisa do projeto do front, mas vejo mta gente reclamando da mesma coisa no reddit então talvez seja algo "endêmico" ou no Next ou algmn pacote que causa isso no Next (oq estranhamente n causava o mesmo efeito nos projetos com Vite).

Felizmente eu sou back então quase n preciso rodar o front do cliente localmente, mas eu fiquei embasbacado com como o pessoal insistiu pra trocar por algo que ao meu ver não trouxe nenhum beneficio real.

Dito isso, acho que algumas coisas do Next são legais -que tb tem em outros meta-frameworks- tipo file-based routing system e file conventions.

Pra ferramentas internas que eu faço o front acabei optando por ficar longe de Next msm

1

Temos o mesmo problema. E piora ou melhora de acordo com a velocidade da máquina de cada um.
Com Vite eu realmente não tinha esse problema.
Resolvemos parcialmente alugando um servidor externo e rodando o Vscode remoto por SSH, para quem tem máquinas mais lentas

1

O maior problema do Next.js para mim é o bundle final ser maior que o necessário. Há tantas features no Next.js que não usamos e esta ali no pacote final que outras alternativas como Remix e Astro se tornam mais interessantes.

Apesar disto, ele é bem completo.

2

Eu concordo completamente.

Eu sinto a mesma coisa com meu framework backend principal, que é o Django Rest. As vezes, você quer fazer só uma API CRUD simples, e só de iniciar o projeto a filosofia pills included puxa até módulo de autenticação e usuário pronto.

1

Sou um grande defensor de React e Next, mas ultimamente parece que tudo esta se tornando over engineering... Começando a ter vontade de fazer algo vanilla, como está o sentimento de vocês quanto a isso?

1

Não sei se é só Next e React. Parece que tudo esta se tornando isso. Tenho gostado do Remix mais pelo fullstack, mas vai saber até onde vai isso.

1

Next.js é moda e marketing. Pessoal utiliza SSR em ambiente que nem precisa, pega algo simples e deixa mais verboso.

Posso estar errado, mas a Vercel tenta de todas as formas boicotar o Vite e o Remix