Emulador de terminal para navegador baseado no parser VT do Ghostty compilado para WASM, com API compatível com xterm.js.
xtermjs/xterm.js
Componente de terminal frontend para o navegador que permite incorporar terminais completos em apps web; usado pelo VS Code e pelo Hyper.
- Estrelas
- 21,287
- Forks
- 2,021
- Issues abertas
- 322
- Último commit
- há 9 dias
O que é?
Xterm.js é um componente frontend que permite que aplicações web exibam um terminal completo para seus usuários no navegador. É usado por projetos como o VS Code e seus forks, Tabby e Hyper. A instalação é feita pelo npm como @xterm/xterm, e sua biblioteca principal não tem dependências.
Xterm.js não é um app de terminal independente nem um shell. Ele renderiza a saída e encaminha a entrada do teclado, e normalmente se conecta a um processo por meio de uma API de pseudoterminal, como node-pty. Programas de terminal como bash, vim e tmux funcionam com ele, incluindo apps baseados em curses e eventos do mouse. Há suporte a caracteres CJK, emoji e IMEs, além de um renderer WebGL opcional com aceleração por GPU.
O projeto oferece um conjunto de addons oficiais para ajustar o tamanho ao contêiner, fazer buscas, detectar links da web, exibir imagens, acessar a área de transferência, usar ligaduras e serializar dados. Uma versão headless, @xterm/headless, roda no Node.js para acompanhar o estado do terminal sem renderizá-lo.
Recursos principais
- 01Executa apps de terminal comuns, como bash, vim e tmux, incluindo eventos do mouse.
- 02Oferece suporte a caracteres CJK, emoji e IMEs.
- 03Disponibiliza um renderer WebGL opcional com aceleração por GPU.
- 04A biblioteca principal não tem dependências e é distribuída como pacote npm.
- 05Oferece addons oficiais para buscas, links da web, ajuste de tamanho, imagens e muito mais.
Casos de uso
- Adicionar um terminal baseado na web a uma IDE online ou a um ambiente de desenvolvimento na nuvem.
- Criar um cliente SSH ou shell remoto no navegador, conectado por websocket.
- Exibir logs de contêineres ou builds em tempo real, com renderização de terminal em um dashboard.
- Executar um terminal headless no Node.js para salvar e restaurar o estado da sessão.
Início rápido
- 1
Instale o módulo pelo npm
npm install --save @xterm/xterm - 2
Importe Terminal no seu código
import { Terminal } from '@xterm/xterm'; - 3
Crie um terminal, abra-o em um elemento e escreva nele
- 4
Inclua a folha de estilos xterm.css na sua página
Antes de usar
- É um componente de frontend para o navegador, não um aplicativo de terminal independente.
- Ele precisa estar conectado a um processo de backend, como node-pty, para executar comandos como bash.
Tópicos
Perguntas frequentes
- O que é xterm.js?
- Componente de terminal frontend para o navegador que permite incorporar terminais completos em apps web; usado pelo VS Code e pelo Hyper. Xterm.js é um componente frontend que permite que aplicações web exibam um terminal completo para seus usuários no navegador. É usado por projetos como o VS Code e seus forks, Tabby e Hyper. A instalação é feita pelo npm como @xterm/xterm, e sua biblioteca principal não tem dependências.
- xterm.js é gratuito? Qual é a licença?
- xterm.js é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- xterm.js ainda é mantido?
- Manutenção ativa. O último commit de xterm.js foi em 13 de out. de 2026.
- Para que posso usar xterm.js?
- Adicionar um terminal baseado na web a uma IDE online ou a um ambiente de desenvolvimento na nuvem. Criar um cliente SSH ou shell remoto no navegador, conectado por websocket. Exibir logs de contêineres ou builds em tempo real, com renderização de terminal em um dashboard. Executar um terminal headless no Node.js para salvar e restaurar o estado da sessão.
- Como instalar xterm.js?
- Instale o módulo pelo npm: npm install --save @xterm/xterm Importe Terminal no seu código: import { Terminal } from '@xterm/xterm'; Crie um terminal, abra-o em um elemento e escreva nele Inclua a folha de estilos xterm.css na sua página
- Onde consigo xterm.js?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/xtermjs/xterm.js
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma CLI que permite a agentes de IA controlar programas interativos de terminal, como REPLs, depuradores e apps TUI, por meio de um PTY.
O app moderno Windows Terminal com abas e suporte a Unicode, além do código-fonte do host clássico do console do Windows (conhost.exe).
Uma barra de progresso rápida e extensível para loops, iteráveis e pipes de linha de comando em Python.
Monitor interativo de terminal para GPUs NVIDIA, com status dos dispositivos e dos processos, seletor de dispositivos via CLI e APIs Python.
Módulo Go para criar saídas de console coloridas e estilizadas, com barras de progresso, tabelas, árvores, gráficos e prompts interativos.