Como mudar a cor do console no terminal em Node.js

Neste artigo você vai aprender a como mudar a cor do console no terminal no Node, vamos utilizar uma abordagem interessante

mudar a cor do console no terminal capa

Fala programador(a), beleza? Bora aprender mais sobre Node.js!

Mudar a cor do console no terminal do Node.js pode ajudar a tornar o output do seu código mais claro e fácil de entender.

Existem várias maneiras de mudar a cor de texto e de fundo no console, e neste artigo, explicaremos algumas delas.

Utilizando ANSI Escape Codes

ANSI Escape Codes são sequências de caracteres que podem ser utilizadas para mudar a cor e outras propriedades de texto no console. Para mudar a cor do texto, você pode utilizar a seguinte sintaxe:

console.log("\x1b[COLOR_CODE_HEREm" + "Texto a ser exibido");

Aonde COLOR_CODE_HERE é um número representando a cor desejada. Aqui estão alguns códigos de cor comuns:

  • 31 – vermelho
  • 32 – verde
  • 33 – amarelo
  • 34 – azul
  • 35 – roxo
  • 36 – ciano

Para mudar o fundo, você pode utilizar o seguinte código:

console.log("\x1b[BACKGROUND_COLOR_CODE_HEREm" + "Texto a ser exibido");
Formação Claude Code
Formação Recomendada

Formação Claude Code

Domine Claude Code do absoluto zero até o avançado

  • 120 aulas
  • 4 projetos
  • 9h 45min

Aonde BACKGROUND_COLOR_CODE_HERE é um número representando a cor desejada. Aqui estão alguns códigos de cor comuns:

  • 41 – vermelho
  • 42 – verde
  • 43 – amarelo
  • 44 – azul
  • 45 – roxo
  • 46 – ciano

Você também pode combinar as cores do texto e do fundo, utilizando o seguinte código:

console.log("\x1b[TEXT_COLOR_CODE_HERE;BACKGROUND_COLOR_CODE_HEREm" + "Texto a ser exibido");

Utilizando um pacote npm

Se você não deseja trabalhar com ANSI Escape Codes manualmente, existem vários pacotes npm disponíveis que tornam a tarefa de mudar a cor do console muito mais fácil. Um deles é o pacote colors.

Para instalá-lo, basta executar o seguinte comando no terminal:

npm install colors

Em seguida, você pode importar o pacote em seu arquivo JavaScript e utilizá-lo da seguinte forma:

const colors = require('colors');
console.log("Texto a ser exibido".red);

O pacote colors suporta várias cores e propriedades diferentes, incluindo negrito, sublinhado, etc.

Quer aprender mais sobre Node? Confira o vídeo abaixo:

Conclusão

E chegamos ao fim do artigo sobre como mudar a cor do console no terminal com Node.js!

Em conclusão, mudar a cor do console no terminal do Node.js é uma tarefa simples e fácil que pode ajudar a tornar o output do seu código mais claro e fácil de entender.

Você pode fazê-lo utilizando ANSI Escape Codes ou pacotes npm como o colors.

Independentemente do método escolhido, mudar a cor do console é uma ótima maneira de melhorar a usabilidade e a aparência do seu código.

Está buscando a sua primeira vaga como Programador? Confira o nosso treinamento completo clicando aqui.

Uma plataforma de cursos com projetos completos, comunidade de alunos e muito mais!

Há também o nosso canal no YouTube, com muito conteúdo gratuito de qualidade!

A cor não para sozinha:

Se liga nisso, porque é a pegadinha número um de quem começa a colorir log

Quando tu abre uma sequência ANSI, ela não vale só naquela linha, ela passa a valer dali pra frente no terminal

Aí o próximo console.log sai colorido também, e o seguinte, e quando o script termina até o teu prompt fica esquisito

Já me ferrei uma vez por causa disso, fiquei um tempão achando que era bug no código kkk

Por isso o padrão ANSI tem uma sequência própria só pra ENCERRAR a formatação, e a regra de bolso é essa: abriu a cor no começo do texto, fecha ela no fim

Faça o teste: roda um console.log colorido e logo abaixo um console.log sem cor nenhuma, depois olha o que aconteceu com o segundo 🙂

ANSI na mão ou pacote npm? Qual escolher:

As duas abordagens funcionam, a escolha é sobre contexto, não sobre qual é a "certa"

ANSI na mão faz sentido quando:

você não quer somar mais uma dependência no projeto (script pequeno, CLI enxuta, projeto que já tem dependência demais)

são duas ou três mensagens coloridas e só

você quer entender o que está acontecendo por baixo (spoiler: é isso que o pacote faz por você)

Pacote npm faz sentido quando:

o projeto já tem log pra todo lado e você não quer código cheio de sequência estranha no meio

mais gente mexe no código e a leitura importa

você quer coisas além de cor, tipo negrito e sublinhado, sem decorar código nenhum

Analogia pra fechar: é a mesma decisão de escrever a query na mão ou usar um ORM

Ninguém está errado, muda o quanto você quer escrever e o quanto quer manter depois

Um padrão de cores que deixa o log legível:

Colorir tudo é o caminho mais rápido pra transformar o terminal em árvore de natal, e aí a cor perde a função

O combinado que funciona é usar cor como SIGNIFICADO, não como enfeite

verde pra sucesso (deu certo, salvou, subiu)

vermelho pra erro (aquilo que você quer achar rolando o terminal pra cima)

amarelo pra aviso (funcionou, mas olha isso aqui)

ciano pra informação e passo de execução

E o resto? Sem cor mesmo

O texto sem cor vira o "normal", e é justamente o contraste com o normal que faz o vermelho saltar aos olhos

Dica de bastidor: em vez de espalhar sequência ANSI pelo projeto inteiro, cria umas funçõezinhas tipo sucesso(), erro() e aviso() em um arquivo só e chama elas

No dia que você quiser trocar o padrão, troca em um lugar só, e não em quarenta =)

Perguntas frequentes sobre cor no console do Node:

Preciso instalar alguma coisa pra usar ANSI Escape Codes?

Não, é o console.log de sempre, o que muda é o texto que você passa pra ele

A instalação só entra em cena se você optar pelo caminho do pacote npm

Por que apareceu um monte de caractere estranho no lugar da cor?

Isso é o terminal não interpretando a sequência e cuspindo ela como texto puro

Ou seja: o problema não está no teu código, está em onde ele foi executado

Antes de sair mudando o script, roda o mesmo exemplo em outro terminal e compara

Funciona igual no console do navegador?

Esse artigo é sobre terminal

O console do navegador é outro ambiente e não dá pra assumir que se comporta do mesmo jeito, então testa antes de levar o mesmo código pro front

E quando eu jogo o log dentro de um arquivo, a cor vai junto?

O que é gravado é o texto com as sequências dentro dele, então o arquivo pode ficar com sujeira no meio das mensagens

Se o teu log é lido por humano no terminal, cor ajuda

Se ele vai pra arquivo ou pra alguma ferramenta que lê aquilo depois, vale conferir como ficou antes de deixar em produção

Dá pra combinar cor com negrito e sublinhado?

Dá, tanto na mão quanto por pacote, o pacote colors por exemplo cobre esse tipo de propriedade além da cor

Leia também

Escrito por | Matheus Battisti

Matheus Battisti
Fundador da Hora de Codar

Programador apaixonado pelo mundo das tecnologias, sempre buscando em aprender e se aprofundar em linguagens, frameworks e o que mais for necessário para executar um bom trabalho. Agora tem uma nova missão que é de passar seu conhecimento adiante para formar novos programadores e especializar mais os que já são.

Subscribe
Notify of
guest

0 Comentários
Oldest
Newest Most Voted

Formações

Formação Vibe Coding

Formação Vibe Coding

Do Prompt ao Produto: Crie Software Real com IA

  • 474 aulas
  • 20 projetos
  • 39h 27min

Blog | Mais populares