Guia de contribuidores: problemas e PRs¶
Obrigado por seu interesse em melhorar este projeto. Este projeto é de código aberto sob a GPL-3. licença. e saúda contribuições na forma de relatórios de bugs, solicitações de funcionalidades e pull requests.
Aqui está uma lista de recursos importantes para os contribuidores:
Como relatar um bug¶
Relate erros no Issue Tracker.
Ao arquivar um problema, certifique-se de responder estas questões:
Qual sistema operacional e versão do Python você está usando?
Qual versão deste projeto você está usando?
O que você fez?
O que você esperava ver?
O que você viu em vez disso?
A melhor maneira de corrigir seu bug é fornecer um caso de teste, e/ou etapas para reproduzir o problema.
Como solicitar um recurso¶
Recursos que melhoram o AMRnet podem ser sugeridos no Issue Tracker. É uma boa ideia primeiro enviar a proposta como um pedido de recurso antes de enviar um pull request, pois isso permite a melhor coordenação de esforços, evitando a duplicação de trabalho. e permite comentários sobre suas ideias.
Guia de Contribuição: Pesquisa e Desenvolvimento¶
Obrigado pelo seu interesse em contribuir para AMRnet! 🎉 Saudamos as contribuições de pesquisadores, desenvolvedores e profissionais de saúde pública em todo o mundo. Este projeto tem código aberto sob a licença GPL-3.0 e saúda as contribuições na forma de relatórios de bugs, solicitações de recursos e pull requests.
Aqui está uma lista de recursos importantes para os contribuidores:
Início rápido¶
Pronto para contribuir? Veja como configurar AMRnet para o desenvolvimento local:
Bifurque o repositório no GitHub
Clonar o seu fork localmente
Crie uma branch de função para suas alterações
Faça suas alterações e teste-as
Enviar um pull request
Tipos de contribuições¶
Relatórios de erros¶
Ajude-nos a melhorar relatando erros usando nosso Issue Tracker.
Antes de relatar um bug: - Procure issues existentes para evitar duplicados - Teste com a versão mais recente - Verifique se o problema ocorre em navegadores diferentes
Ao exibir um relatório de bug, por favor, inclua: - Qual sistema operacional e navegador você está utilizando - Qual versão da AMRnet você está utilizando - Passos para reproduzir o problema - o que você esperava que acontecesse - O que realmente aconteceu - Screenshots se aplicável
Solicitações de recursos¶
Congratulamo-nos com sugestões de recursos que melhoram a funcionalidade do AMRnet na supervisão AMR.
Os bons pedidos de funcionalidades incluem: - Descrição clara do problema que está sendo resolvido - casos específicos de uso da saúde pública ou perspectivas de pesquisa - consideração de diferentes tipos de usuário (pesquisadores, decisores políticos, etc.)
Melhorias de Documentação¶
As melhorias de documentação são sempre bem-vindas, incluindo: - Corrigir erros de digitação ou esclarecer instruções - adicionar exemplos ou usar casos - Traduzindo conteúdo para outras línguas - Criando tutoriais ou guias
Como configurar seu ambiente de desenvolvimento¶
Pré-requisitos¶
Antes de começar, certifique-se de que:
Node.js mais de 18 com npm
Python 3.8+ (para processamento de dados)
MongoDB 6.0+ (local ou Atlas)
Git para controle de versão
Configuração inicial¶
# Clone your fork
git clone https://github.com/YOUR_USERNAME/amrnet.git
cd amrnet
# Install dependencies
npm install
cd client && npm install && cd ..
# Set up environment
cp .env.example .env
# Edit .env with your configuration
# Start development servers
npm run start:dev
O aplicativo estará disponível em http://localhost:3000 com a API em http://localhost:8080.
Padrões de qualidade código¶
Vinculando e formatando¶
AMRnet usa ESLint e Prettier para manter a qualidade do código:
# Lint JavaScript/React code
cd client && npm run lint
# Format code with Prettier
npm run format
# Fix linting issues automatically
cd client && npm run lint:fix
Testando¶
Sempre inclua testes com suas contribuições:
# Run frontend tests
cd client && npm test
# Run tests with coverage
cd client && npm test -- --coverage
# Run backend tests (if available)
npm run test:backend
Git Hooks¶
Os hooks de pré-commit executam automaticamente a linha e formatação: - Configurado via .editorconfig e .prettierrc.json - Garante um estilo consistente de código entre todas as contribuições
Workflow de desenvolvimento¶
Nomeação da filial¶
Use nomes de ramificações descritivas: - feature/add-organism-filtering - bugfix/map-rendering-issue - docs/update-installation-guide
Submeter Mensagens¶
Seguir o formato convencional do commit : - feat: adicionar novo recurso de filtragem do organismo - ``fix: resolver problema na renderização do mapa no celular - docs: atualizar instruções de instalação
Processo de Revisão do Código¶
Todas as contribuições passam pela revisão de código: 1. Crie um pull request com uma descrição clara 2. Testes automatizados devem passar 3. Revisão do código pelos mantenedores 4. Feedback do endereço e atualização conforme necessário 5. Mesclar depois de aprovado
Áreas de Contribuição Específicas¶
Desenvolvimento de Frontend¶
Tecnologias: React 18, Material-UI, Redux, Recharts
Áreas-chave para contribuição: - Novos componentes de visualização - Melhorias de resposta móvel - Melhorias de acessibilidade - Otimizações de desempenho
Desenvolvimento de backend¶
Technologies: Node.js, Express.js, MongoDB
Áreas chave para contribuição: - Otimização de ponto de extremidade de API - Melhorias de consulta de dados - Validação e processamento - Melhorias de segurança
Processamento de dados¶
Technologies: Python, pandas, NumPy
Áreas-chave para contribuição: - Novos analisadores de dados de organismo - Validação da qualidade dos dados - Funções de análise estatística - Suporte ao formato de exportação
Documentação¶
Áreas precisam de ajuda: - Guias do usuário e tutoriais - Documentação da API - Integração de desenvolvedores - Traduções de várias línguas
Como enviar as alterações¶
Abra o pull request para enviar alterações a este projeto.
**Seu pull request deve: ** - Inclua uma descrição clara das alterações - Passe todos os testes automatizados - Inclua testes relevantes para a nova funcionalidade - Atualize a documentação, se necessário - Siga os padrões de codificação do projeto
Modelo de pull request inclui: - Descrição das alterações - tipo de mudança (bugfix, feature, docs, etc.) - Testing checklist - Screenshots para alterações da UI
Diretrizes da Comunidade¶
Seja respeitoso e inclusivo
Fornecer feedback construtivo
Foco na missão de saúde científica e pública
Ajude os novatos a começarem
Siga nosso Código de Conduta
Obtendo ajuda¶
**Precisa de ajuda? * - Verifique os Issues - Junte-se a nosso Discussions - Revise o Installation Guide <installation>da :doc: - Leia o Developer Guide
Para problemas urgentes: - vulnerabilidades de segurança: Veja nossa Política de Segurança - bugs críticos: use o Rastreador de Problemas com o rótulo «urgente»