A Falácia da API Fullstack: Use Hono e NestJS
O desenvolvimento de APIs em frameworks fullstack como Next.js gera dívida técnica imediata. Route Handlers e Server Actions acoplam regras de negócio à camada de apresentação. Quando o projeto cresce e a mesma API precisa alimentar um aplicativo mobile ou outro microsserviço, o retrabalho é inevitável. A equipe é forçada a extrair a lógica, lidar com dependências emaranhadas e reescrever o backend em um ambiente isolado.
Frameworks focados em SSR carecem de primitivas essenciais para o desenvolvimento de APIs densas. Injeção de dependência nativa, validação padronizada de DTOs e pipelines de interceptação são rudimentares ou inexistentes. Além disso, a arquitetura fica frequentemente refém de cold starts em ambientes serverless e vendor lock-in de plataformas de hospedagem focadas em frontend.
O desenvolvimento de backend em TypeScript exige apenas duas ferramentas para cobrir qualquer cenário: Hono para performance na borda e NestJS para arquiteturas complexas.
Hono: Borda e Microsserviços Enxutos O Hono opera sobre Web Standard APIs e possui zero dependências. O roteamento via RegExp Router entrega performance máxima. É a ferramenta exata para BFFs (Backend for Frontend), gateways ou microsserviços focados em alta concorrência e baixa latência. Por não depender da API nativa do Node.js, ele roda de forma nativa e otimizada em Cloudflare Workers, Bun e Deno. O código é focado puramente em requests e responses rápidos.
NestJS: Domínios Complexos e Escala Quando o domínio exige regras de negócio pesadas, o Hono perde eficácia devido à falta de convenções estruturais fortes. O NestJS resolve a desordem arquitetural implementando Injeção de Dependência, princípios SOLID e modularização estrita. Ele obriga a separação clara entre Controllers, Services, Guards e Pipes. Para monólitos corporativos ou sistemas orientados a eventos (com suporte nativo a gRPC, RabbitMQ e Kafka), o NestJS garante que o código escale de forma previsível, permitindo que múltiplos times trabalhem no mesmo repositório sem atrito.
Manter a API isolada do frontend em um repositório dedicado com Hono ou NestJS garante que o ecossistema backend utilize as ferramentas corretas para rede, banco de dados e arquitetura, sem herdar as limitações de um framework focado em renderização de UI.