Node.js 24 com TypeScript Nativo
A etapa de build está quase morta.
O Node.js 24 agora suporta TypeScript nativamente. Você pode executar arquivos .ts em produção sem uma etapa de build. Isso remove a fricção entre o seu código e a sua execução.
Como funciona: O runtime analisa a sua sintaxe TypeScript. Ele remove as anotações de tipo no momento do carregamento. Em seguida, executa o JavaScript resultante.
Fatos principais sobre essa mudança:
- Não realiza verificação de tipos.
- Não gera arquivos .d.ts.
- Trata o TypeScript como JavaScript anotado.
- O runtime descarta as anotações antes da execução.
Isso simplifica o seu deployment. Você não precisa mais gerenciar diretórios de saída do tsc ou configurações complexas de source maps para o deployment. O seu código-fonte torna-se a sua única fonte de verdade.
Fique atento a estas limitações:
- Sem verificação de tipos em tempo de execução. Você ainda precisará executar
tsc --noEmitno seu pipeline de CI para capturar erros. - Sem suporte para mapeamentos de caminho (path mappings) do tsconfig.json.
- Sem suporte para decorators ou transformers customizados.
- Pequeno custo de performance durante cold starts devido à remoção de tipos.
Se você utiliza aliases de caminho como @/utils, ainda precisará de um bundler ou esbuild.
Como usar:
Você pode executar o seu servidor diretamente com o Node:
node src/server.ts
Para um melhor debugging, use a flag de source maps:
node --enable-source-maps src/server.ts
Esta é uma ótima escolha para microsserviços com grafos de dependência simples. Você ganha velocidade no deployment. No entanto, se precisar de otimização pesada ou minificação, mantenha um pipeline de build tradicional.
O objetivo é adequar a ferramenta às suas necessidades específicas.