Buscar

Ferramentas

discord.js

Biblioteca de Node.js para criar bots do Discord em JavaScript ou TypeScript, com comandos de barra, eventos e canais de voz, para quem cuida de comunidades.

  • Desenvolvimento
discord.js

Um bot que responde comandos ou posta avisos num servidor do Discord precisa falar com a API da plataforma, e o discord.js é o módulo de Node.js para essa conversa. Segundo o site, o desenho orientado a objetos deixa o código do bot mais fácil de ler. O repositório reúne vários pacotes: além do principal, há @discordjs/rest, @discordjs/builders, @discordjs/voice e outros.

Para que serve

  • Registrar e responder comandos de barra pela API REST do Discord.
  • Avisar a comunidade num canal quando sai um post novo, uma versão do produto ou um alerta de sistema.
  • Entrar em canais de voz e usar a API de voz pelo pacote @discordjs/voice.
  • Gerar a estrutura inicial de um projeto com o create-discord-bot.

Como começar

Node.js 24.17.0 ou mais novo é o requisito do pacote. Instale com npm, yarn, pnpm ou bun:

npm install discord.js

Os pacotes opcionais zlib-sync e bufferutil melhoram o WebSocket. Antes de rodar qualquer código, crie a aplicação no Developer Portal do Discord (botão New Application) e gere o token do bot em Reset Token. O guia oficial compara esse token a uma senha: quem o obtém usa o bot como se fosse dele. Leia o valor de uma variável de ambiente ou de um arquivo fora do repositório, nunca escrito no código.

Licença e custo

Na redistribuição, original ou modificada, a Apache 2.0 exige levar junto o texto da licença, os avisos de copyright e o arquivo NOTICE, se houver, e indicar os arquivos que mudaram. A licença também concede uso das patentes dos contribuidores que cobrem o código. A biblioteca é gratuita; se houver conta a pagar, é a da máquina onde o bot roda.

Quando vale a pena

Para equipes que já trabalham com JavaScript ou TypeScript e querem um bot com comandos e interação, é uma base madura. Em Python, a alternativa é o discord.py. Se a ideia é só publicar avisos num canal, sem comando nenhum, um webhook de canal do próprio Discord dispensa bot; o texto sobre como funcionam os webhooks explica o mecanismo.