Contribuindo para a Luma

Obrigado pelo seu interesse em contribuir com a Luma! Valorizamos seu tempo e esforço para ajudar a melhorar este projeto.

Repositório no GitHub

Código de Conduta

Antes de contribuir, por favor leia e siga nosso Código de Conduta. Estamos comprometidos em fornecer um ambiente amigável, seguro e acolhedor para todos os contribuidores.

Formas de Contribuir

Existem várias maneiras de contribuir com a Luma:

Reportando Bugs

Encontrou um bug? Por favor abra uma issue no GitHub com:

Sugerindo Melhorias

Tem uma ideia para melhorar a Luma? Adoraríamos ouvir! Ao sugerir novas funcionalidades:

Contribuições de Código

Quer contribuir com código? Siga estes passos:

Fluxo de Desenvolvimento

Importante: Antes de começar qualquer trabalho de desenvolvimento, por favor abra uma issue para discutir suas mudanças propostas com os mantenedores.

Configurando Seu Ambiente

  1. Faça um fork do repositório

    Clique no botão "Fork" no canto superior direito da página do repositório.

  2. Clone seu fork
    git clone https://github.com/seu-usuario/luma-core.git
    cd luma-core
  3. Configure o remote upstream
    git remote add upstream https://github.com/luma-assistente/luma-core.git
  4. Crie um ambiente virtual
    python -m venv venv
    source venv/bin/activate  # No Windows use `venv\Scripts\activate`
  5. Instale as dependências
    pip install -r requirements-dev.txt
  6. Crie uma nova branch
    git checkout -b feature/nome-da-sua-feature

    Use nomes descritivos como fix/corrige-login ou feature/modulo-tempo.

Fazendo Alterações

Padrão de Código: Por favor siga nossos padrões:

  1. Faça suas alterações seguindo os padrões do projeto
  2. Escreva testes para novas funcionalidades
  3. Execute os testes:
    pytest
  4. Formate seu código:
    black .
    isort .
  5. Faça commit com mensagens descritivas:
    git commit -m "feat: adiciona integração com módulo de tempo"
    git commit -m "fix: corrige autenticação no login"

    Seguimos Conventional Commits para mensagens de commit.

  6. Envie para seu fork:
    git push origin feature/nome-da-sua-feature

Criando um Pull Request

  1. Acesse o repositório principal no GitHub
  2. Clique em "New Pull Request"
  3. Selecione seu fork e branch
  4. Preencha o template do PR com:
    • Um título e descrição claros
    • Referência a issues relacionadas
    • Capturas de tela ou vídeos se aplicável
  5. Envie o PR e aguarde a revisão

Aviso: Nossa equipe revisa PRs regularmente. Por favor seja paciente e responsivo a quaisquer alterações solicitadas.

Testes

Todas as contribuições devem incluir testes apropriados. Usamos pytest para nossa suíte de testes.

Executando Testes

pytest

Cobertura de Testes

Verifique a cobertura de testes com:

pytest --cov=luma

Buscamos manter pelo menos 80% de cobertura de testes.

Documentação

Uma boa documentação é crucial. Ao adicionar novas funcionalidades:

Construindo a Documentação

cd docs
make html

Comunidade

Junte-se aos nossos canais de comunidade para ajuda e discussão: