Este guia tem o objetivo de dar um overview de como contribuir com este projeto. Vale ressaltar que qualquer contribuição é bem-vinda, você não precisa necessariamente ter conhecimento em programação. Reportar problemas e sugerir melhorias pode ser uma forma bacana de iniciar.
Para isso, basta criar uma nova issue para que possamos discutir sobre.
Crie uma nova issue, bem detalhada, explicando qual é o problema e qual seria o comportamento esperado. Explique como reproduzir o problema e (se aplicável) use screenshots, isso pode facilitar a identificação do problema e sua possível correção.
Para começar com o desenvolvimento, você precisa ter somente o Python (3.9+) instalado e o Poetry — para isolar o ambiente e instalar as dependências. Ainda que não tenha conhecimento em Python, pode nos chamar no servidor do Discord e/ou na própria issue que daremos um help. 😺
- Instale a última versão do Python 3.9 (lembre de marcar para adicionar o Python à variável de ambiente
PATH
, ou você pode fazer isso posteriormente, manualmente). - Depois de instalado, instale também o Poetry. Para isso, use o comando:
pip install poetry
Nós recomendamos setar a configuração virtualenvs.in-project
do Poetry para criar o ambiente virtual no mesmo diretório do projeto (do contrário, será criado no %homepath%
do usuário). Então, especifique para criar virtual enviroment no mesmo diretório:
poetry config virtualenvs.in-project true
- Clone este repositório e instale as dependências:
git clone https://github.com/cationhq/cationbot
cd cationbot
poetry install
-
Antes de executar a aplicação, é necessário criar uma conta de bot e obter um token de acesso do Discord. Você pode seguir este guia para criar uma conta de teste e um servidor próprio para executar o bot. Depois de obter o token, renomeie o arquivo
.env.example
para.env
e altere o valor da variávelTOKEN
para o token disponibilizado pelo Discord. -
Quando você executou o
poetry install
, um diretório.venv
foi criado no diretório raiz. É onde o "ambiente isolado" do Python está, com nossas dependências. Para "executar" este ambiente isoaldo, primeiro entre no shell desse ambiente e execute a aplicação:
poetry shell
python -m cationbot
INFO:discord.client:logging in using static token
INFO:discord.gateway:Shard ID None has sent the IDENTIFY payload.
INFO:discord.gateway:Shard ID None has connected to Gateway: ...
- Seu bot estará online, basta obter o link de instalação do bot (fornecido no portal de desenvolvedor do Discord) e adicionar o bot ao seu canal. Se necessário, peça ajuda.
- Sempre crie sua branch a partir da
development
, que é nossa branch base de desenvolvimento. - Mantenha sua branch sempre atualizada com a nossa
development
. Alguns links úteis: Como configurar oremote
do fork // Como sincronizar um fork - Quando for enviar o pull request, detalhe bem o que está sendo alterado. Isso torna a revisão de código mais simples e faz com que suas contribuições sejam mergeadas mais rapidamente.
-
Teste o que você faz! É sério, teste faz bem e causa menos dores de cabeça. 😿 Se alterou algum comportamento e/ou adicionou novas features, garanta que você também está entregando os testes unitários que validem esse novo estado do código. Se necessário, peça ajuda.
-
Nós utilizamos alguns recursos para manter a padronização de código. Se você utiliza o VScode, basta instalar as dependências recomendadas que serão exibidas na primeira vez que abrir este repositório no editor. Você pode ver no arquivo
.vscode/extensions.json
as extensões que recomendamos.
— cationdevs.