Categorias do Site

Como executar TypeScript no Node.js: tsx, ts-node e nativo

Compare tsx, ts-node e suporte nativo para executar TypeScript no Node.js. Descubra vantagens e desvantagens de cada método.

Logotipo do TypeScript (TS) em azul e verde, rodeado por um padrão geométrico de linhas em ziguezague azul neon sobre fundo roxo escuro.

O TypeScript adiciona tipagem estática ao código JavaScript, ajudando a reduzir comportamentos imprevisíveis e bugs. No passado, o código TypeScript não rodava diretamente no Node.js. A maneira padrão era primeiro compilá-lo para JavaScript usando a ferramenta CLI do TypeScript (tsc) e depois executar o código resultante.

Running TypeScript In Node.js: Tsx Vs. Ts-node Vs. Native

Com o lançamento da versão 22.6 do Node.js, o runtime adicionou suporte experimental leve para TypeScript, utilizando um método conhecido como remoção de tipos.

Um runner TypeScript é qualquer programa que executa diretamente o código TypeScript. Runners de TypeScript lidam com dois passos de desenvolvimento ao mesmo tempo, tornando o processo mais rápido. Vamos explorar três maneiras de rodar TypeScript no Node.js:

  1. Usando a remoção de tipos nativa do Node.js
  2. Usando tsx
  3. Usando ts-node

Remoção de tipos no Node.js

Na versão 22.6, o Node.js lançou a flag --experimental-strip-types. Quando usada, transforma um arquivo TypeScript em JavaScript antes de executá-lo. O Node.js não faz verificação de tipos, deixando essa tarefa para o desenvolvedor.

Desvantagens do uso da remoção de tipos do Node.js

Algumas desvantagens incluem:

  • Funcionalidade ainda experimental e não recomendada para produção.
  • Não faz verificação de tipos, apenas remove e executa o código.
  • Ignora o arquivo tsconfig.json e não usa instruções personalizadas.

Módulo ts-node

O ts-node é um módulo npm de terceiros usado para rodar TypeScript diretamente no Node.js. Ele oferece suporte completo ao TypeScript, ao contrário da remoção de tipos do Node.js.

Como usar ts-node

Para usar ts-node, instale-o como uma dependência de desenvolvimento junto com o TypeScript. Execute o arquivo TypeScript no Node.js usando o comando:

npx ts-node index.js

Pode-se usar ts-node na produção?

O ts-node pode ser usado em produção, mas adiciona um overhead desnecessário. É melhor transpilar o código para JavaScript antes.

Módulo tsx

O tsx é um pacote npm que usa o Node.js para executar código TypeScript. Ele tenta ser intuitivo e amigável para iniciantes. O tsx não suporta verificação de tipos, mas oferece um REPL TypeScript.

Como usar tsx

Instale o tsx como uma dependência de desenvolvimento e use o comando:

npx tsx index.js

Comparando runners TypeScript

Recursos Remoção de tipos Node.js ts-node tsx
Verificação de tipos
Suporte completo ao TypeScript Experimental

Conclusão

Este artigo mostrou diferentes maneiras de executar TypeScript diretamente no Node.js, destacando as vantagens e desvantagens de cada método.

  • Enfrentando a Complexidade com GraphQL

    Descubra como GraphQL facilita o desenvolvimento de soluções inteligentes com IA.

    Descubra como GraphQL facilita o desenvolvimento de soluções inteligentes com IA.

    Ler notícia completa
    Banner de podcast da UX Magazine intitulado
  • UX: Emoções Além das Telas no Design

    Descubra como o design emocional transforma experiências, indo além das telas e criando conexões humanas.

    Descubra como o design emocional transforma experiências, indo além das telas e criando conexões humanas.

    Ler notícia completa
    Símbolo abstrato em tons de marrom e laranja que se assemelha a uma pessoa estilizada com braços estendidos e uma perna erguida.
  • Como usar CSS line-clamp para limitar texto

    Aprenda a usar a propriedade CSS line-clamp para limitar linhas de texto e melhorar a aparência do layout.

    Aprenda a usar a propriedade CSS line-clamp para limitar linhas de texto e melhorar a aparência do layout.

    Ler notícia completa
    Fundo gradiente em tons de laranja e violeta com o texto
  • Promise.all ainda é relevante em 2025?

    Antes das promises serem introduzidas nativamente no JavaScript, usávamos muitos callbacks para tarefas assíncronas. É comum ver callbacks sendo usados, pois muitos desenvolvedores podem ainda pensar que callbacks e promises são o mesmo, mas não são. Quando promises foram introduzidas, substituíram amplamente os callbacks, tornando a sintaxe mais compreensível. Em 2025, com async/await, Promise.allSettled, Promise.any […]

    Promise.all é crucial para tarefas assíncronas, mas novas alternativas surgem em 2025. Saiba quando usá-lo.

    Ler notícia completa
    Logotipo do JavaScript (JS) em quadrado amarelo sobre fundo com ondas suaves em tons de branco e cinza claro.
  • Equilibrando IA e UX: O Desafio do Design Humanizado

    A IA está sendo integrada aos fluxos de trabalho de design modernos, ajudando na geração de conteúdo, ideação e prototipagem. Isso aumenta a eficiência das equipes de design, aprimorando a forma como criamos, pensamos e resolvemos problemas. No entanto, a IA também traz preocupações ao processo de design, como a possível perda de foco no […]

    Descubra como manter o design UX humanizado enquanto utiliza IA para otimizar processos e aumentar a produtividade.

    Ler notícia completa
    Mão robótica branca tocando a ponta do dedo de uma mão humana contra um fundo colorido em tons de arco-íris.
  • A Revolução dos Navegadores com IA: Impactos e Futuro

    Há uma revolução silenciosa ocorrendo em um software que você usa diariamente, mas raramente pensa sobre: o navegador. Chrome, Safari, Firefox têm sido nossas janelas para a web por décadas. Agora, algo significativo está acontecendo. Uma nova espécie de navegador está surgindo: o navegador com IA. Ele não apenas muda como navegamos, mas redefine o […]

    Navegadores com IA estão mudando a web, impactando a criatividade, economia e verdade online.

    Ler notícia completa
    Tela de interface do Instacart mostrando produtos essenciais para praia à venda, como protetor solar e toalhas, com uma janela de chat com o assistente virtual aberta.
  • As 3 previsões para o futuro do design UX

    A evolução tecnológica moderniza e melhora todas as áreas da tecnologia, incluindo o design de dispositivos digitais, automação, desenvolvimento de software e design UI/UX. Essa evolução e as inovações em HCI (Interação Humano-Computador) impulsionam o design UI/UX para ajudar designers a criar produtos digitais mais amigáveis, usáveis e produtivos para todos os usuários. O design […]

    Confira as três principais previsões para a próxima era do design UX e como elas podem impactar o futuro das interfaces digitais.

    Ler notícia completa
    Ilustração em 3D de um computador desktop moderno com ícones em estilo futurista na tela, sobre fundo roxo com linhas de rede digitais.
  • A Importância do Enquadramento no Design

    No design, o enquadramento do problema está se tornando o cerne do papel humano. À medida que a IA, ou o que chamo de Programa, assume mais o trabalho de solução, nosso ofício muda para como tratamos o problema. “A IA não está substituindo designers; está substituindo designers que focam em saídas automatizáveis.” Citação e […]

    Explorando como o enquadramento de problemas redefine o papel humano no design em tempos de IA.

    Ler notícia completa
    Imagem de rabisco em preto e branco cheia de palavras e desenhos, incluindo cabeças estilizadas, uma palavra
  • Psicologia Ética no E-commerce: Facilite Compras

    A psicologia no e-commerce tem uma má reputação, muitas vezes associada a táticas de manipulação como escassez artificial e cobranças ocultas. No entanto, existe um lado positivo: a facilitação das compras sem manipulação. Trabalhando anos com e-commerce, percebi que a maioria dos problemas de conversão está em facilitar o processo de compra. Vou mostrar quatro […]

    Aprenda como remover barreiras psicológicas no e-commerce, promovendo compras éticas sem manipulação.

    Ler notícia completa
    Ilustração de um trator removendo neve da estrada, com carros vermelhos parcialmente cobertos de neve ao lado. Ambiente frio com árvores ao fundo.