Skip to content

vkunssec/bot-discord-automation

Repository files navigation

Bot

Docs Deploy GCP Commitizen friendly

Estrutura do Projeto

Projeto baseado em NodeJS para criação de um Bot para Discord. Conforme a necessidade podem ser acrescentadas novas pastas e arquivos de configuração.

// resumo básico da estrutura do projeto
    // pasta `src` para centralização do projeto
├── src
        // pasta das funcionalidades automáticas
    ├── automation

        // pasta dos comandos para o bot
    ├── commands

        // pasta de configurações gerais
        // variáveis de ambiente, chaves de conexões, etc
    ├── config

        // pasta para as classes de execução dos handler do projeto
    ├── controller
            // arquivo handler padrão para as interações do usuário no chat
        └── Interaction.ts

        // pasta das funcionalidades centrais, ex.:
        // modelos de dados, classes de conexões com banco de dados, etc
    ├── core
        // pasta modelos de dados
        └── model

        // pasta de interfaces
        └── interface

        // arquivo para classe principal do projeto
        // Dryscord Application - controle das inicializações, event listeners, routes, etc
    ├── main.ts
        // arquivo de inicialização do projeto, servindo atualmente o bot
        // podendo futuramente servir rotas http ou demais funcionalidades
    └── server.ts

    // arquivo de regras de arquivos ignorados
├── .dockerignore
├── .gitignore

    // arquivo de variáveis de ambiente
├── .env

    // arquivo de docker
├── docker-compose.yml
├── Dockerfile

    // arquivo de configuração da aplicação nodejs
├── package.json

    // arquivo de configuração do interpretador typescript
└── tsconfig.json

Environment

Variáveis de Ambiente do projeto, ex.: .env.example

# Ambiente
STAGE=<development | staging | production>

# Porta
PORT=8080

# Discord
DISCORD_ACCESS_TOKEN=<discord_token>
CLIENT_ID=<application_id>

# Canais
CHANNEL_LOGS=<channel_logs_id>
CHANNEL_WELCOME=<channel_welcome_id>
CHANNEL_BIRTHDAY=<channel_birthday_id>

# Cargos
ROLE_DEFAULT=<role_default_id>

# MongoDB
MONGODB_URI=<mongodb_uri>
MONGODB_DATABASE=<mongodb_database>
MONGODB_COLLECTION_BIRTHDATE=<collection_birthdate>
MONGODB_COLLECTION_USER_INTERACTIONS=<collection_user_interactions>

Inicialização

Via Docker

docker compose up

Via CLI

Rodar em ambiente de Desenvolvimento

npm run dev

Rodar a Construção do projeto

npm run build

Rodar a Inicialização

npm run start

Dependências

Principais dependências do projeto em produção

Demais dependências para desenvolvimento

Documentação

Para mais informações sobre o projeto, acesse a Documentação

About

Simples Bot Discord with Automations

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages