Skip to content

Contribuindo

Contribua com o Potato — configure um ambiente de desenvolvimento, execute a suíte de testes, envie pull requests, relate bugs e escreva documentação para a ferramenta de anotação de código aberto.

O Potato é totalmente de código aberto e recebe bem contribuições da comunidade. Este guia explica como contribuir de forma eficaz.

Primeiros Passos

Pré-requisitos

  • Python 3.7+
  • Git
  • Uma conta no GitHub

Configurando Seu Ambiente de Desenvolvimento

  1. Faça um fork do repositório no GitHub

  2. Clone o seu fork:

    bash
    git clone https://github.com/YOUR_USERNAME/potato.git
    cd potato
  3. Instale as dependências:

    bash
    pip install -r requirements.txt
    pip install -r requirements-test.txt  # For running tests
  4. Execute os testes para garantir que tudo funciona:

    bash
    pytest

Formas de Contribuir

Relatando Bugs

Encontrou um bug? Abra uma issue com:

  • Um título claro e descritivo
  • Passos para reproduzir o problema
  • Comportamento esperado vs. comportamento real
  • Seu ambiente (versão do Python, sistema operacional, navegador se relevante)
  • Mensagens de erro ou logs, se disponíveis

Sugerindo Funcionalidades

Tem uma ideia de melhoria? Abra um pedido de funcionalidade descrevendo:

  • O problema que você está tentando resolver
  • A solução que você propõe
  • Por que isso beneficiaria outros usuários

Enviando Código

  1. Crie um branch para as suas alterações:

    bash
    git checkout -b feature/your-feature-name
  2. Faça as suas alterações, seguindo os padrões de código

  3. Escreva testes para a nova funcionalidade

  4. Execute a suíte de testes:

    bash
    pytest tests/unit/ -v      # Fast unit tests
    pytest tests/server/ -v    # Integration tests
  5. Faça o commit das suas alterações com uma mensagem descritiva:

    bash
    git commit -m "Add feature: brief description of changes"
  6. Faça push para o seu fork:

    bash
    git push origin feature/your-feature-name
  7. Abra um Pull Request no GitHub

Padrões de Código

Estilo Python

  • Siga as diretrizes de estilo da PEP 8
  • Use nomes significativos para variáveis e funções
  • Adicione docstrings para funções e classes públicas
  • Mantenha as funções focadas e com tamanho razoável

Documentação

Ao adicionar ou modificar funcionalidades:

  1. Atualize a documentação relevante no diretório docs/
  2. Adicione ou atualize configurações de exemplo em project-hub/simple_examples/
  3. Inclua comentários inline para lógica complexa

Testes

  • Escreva testes para novas funcionalidades e correções de bugs
  • Coloque os testes unitários em tests/unit/
  • Coloque os testes de integração em tests/server/
  • Garanta que todos os testes passem antes de enviar um PR

Diretrizes de Documentação

Toda funcionalidade importante deve incluir:

  1. Documentação do Administrador (docs/):

    • Opções de configuração e valores padrão
    • Exemplos em YAML
    • Dicas de solução de problemas
  2. Projeto de Exemplo (project-hub/simple_examples/):

    • Arquivo de configuração funcional
    • Arquivo de dados de amostra
    • README se for complexo

Estilo da Documentação

  • Use a sintaxe YAML correta (não o estilo JSON)
  • Inclua exemplos completos e executáveis
  • Faça referência cruzada à documentação relacionada
  • Adicione capturas de tela para funcionalidades de interface

Diretrizes para Pull Requests

Antes de Enviar

  • Os testes passam localmente (pytest)
  • O código segue o estilo do projeto
  • A documentação está atualizada
  • As mensagens de commit estão claras
  • O branch está atualizado com o main

Descrição do PR

Inclua:

  • O que o PR faz
  • Por que a alteração é necessária
  • Como testar as alterações
  • Capturas de tela para mudanças de interface

Roadmap de Desenvolvimento

Prioridades atuais de desenvolvimento:

  1. Melhorias aprimoradas de UI/UX
  2. Tipos adicionais de esquema de anotação
  3. Melhores opções de integração com IA
  4. Otimizações de desempenho
  5. Melhorias na documentação

Obtendo Ajuda

Código de Conduta

Por favor, seja respeitoso e construtivo em todas as interações. Estamos todos aqui para tornar o Potato melhor.

Licença

Ao contribuir com o Potato, você concorda que as suas contribuições serão licenciadas sob a licença existente do projeto.


Obrigado por contribuir com o Potato!

Para mais detalhes, consulte a documentação de origem.