Skip to main content

Escolher Next.js | Insights

  • Escolher Next.js | Insights

🤔 Por que Next.js não deveria ser sua primeira escolha para novos projetos React?

Nos últimos anos, vimos uma adoção massiva do Next.js como “o framework React” por excelência. Mesmo sendo a recomendação oficial após a depreciação do CRA, é importante discutir pontos críticos que muitas vezes passam despercebidos.


🔒 Lock-in e limitações de deploy

O Next.js é opinativo e, embora open-source, cria um lock-in significativo com a Vercel. Apesar de permitir deploy em outras plataformas, as limitações são consideráveis:

  • 🔧 Necessidade de adaptações complexas e dependência de soluções como OpenNext para AWS.
  • 📉 Performance inferior quando rodado como um simples processo Node.js.
  • 💰 Custos operacionais elevados com SSR sem critérios, comparado a SPAs.
  • 🔐 Maior exposição a falhas de segurança (e aquela chave privada com NEXT_PUBLIC, hein?).
  • 💼 Deploy on-premises? Prepare-se para limitações com um único processo Node.js e nenhuma otimização.

📦 Mas e o OpenNext, não resolve?

O OpenNext adapta builds do Next.js para ambientes como AWS, usando serviços como Lambda e CloudFront. Mas vamos combinar: se precisamos de uma ferramenta só para conseguir fazer o deploy fora da Vercel, isso por si só já é um sinal amarelo.

Experimente e tire suas próprias conclusões. 🥲


🐘 O "Elefante na Sala"

Mesmo com o status de recomendação oficial, considere:

  • ⚠️ Novatos confundem Next.js com “o único jeito” de usar React.
  • 🔄 React é uma biblioteca, não um framework.
  • 🛠️ A filosofia do React é ser agnóstica a ferramentas.
  • 📊 Nem todo projeto precisa da complexidade de um framework full-stack com SSR.

💪 Alternativas sólidas

🔹 SPA com Vite

  • ⚡ Performance excepcional
  • 🎯 Configuração simples e flexível
  • 🔓 Sem lock-in
  • 🌱 Comunidade ativa e crescente

🔹 SPA com RsBuild

  • 🚀 Nova geração de bundler (escrito em Rust)
  • ⚡ Extremamente rápido
  • 🔄 Flexível para diferentes estratégias de deploy
  • 🌐 Open-source e independente

🔹 SPA ou SSR com react-router (antigo Remix)

  • ⚡ Usa Vite por baixo dos panos
  • 🎯 Configuração simples
  • 🔓 SSR opcional — pode ser um projeto Vite tradicional
  • 🌱 Comunidade ativa

🎯 Seja consciente

Antes de embarcar no Next.js, pense sobre:

  • 🔴 Você realmente precisa de SSR/RSC e SEO avançado?
  • 🔴 Quais os custos de infraestrutura no longo prazo?
  • 🔴 Precisa de flexibilidade de deploy?
  • 🔴 Está disposto ao lock-in com fornecedores?
  • 🔴 Consegue acompanhar os breaking changes frequentes?

O ecossistema React é rico em alternativas que oferecem mais liberdade e menos complexidade. No fim das contas, o velho ditado se aplica bem:

Menos é mais. 🧘‍♂️