Contribuindo para o Repomix
Obrigado pelo seu interesse no Repomix! 🚀 Adoraríamos sua ajuda para torná-lo ainda melhor. Este guia irá ajudá-lo a começar a contribuir para o projeto.
Como Contribuir
- Estrelar o Repositório: Mostre seu apoio estrelando o repositório!
- Criar uma Issue: Encontrou um bug? Tem uma ideia para um novo recurso? Informe-nos criando uma issue.
- Enviar um Pull Request: Encontrou algo para corrigir ou melhorar? Envie um PR!
- Espalhar a Palavra: Compartilhe sua experiência com o Repomix nas redes sociais, blogs ou com sua comunidade de tecnologia.
- Usar o Repomix: O melhor feedback vem do uso no mundo real, então sinta-se à vontade para integrar o Repomix em seus próprios projetos!
- Patrocinar: Apoie o desenvolvimento do Repomix tornando-se um patrocinador.
Início Rápido
bash
git clone https://github.com/yamadashy/repomix.git
cd repomix
npm install
Comandos de Desenvolvimento
bash
# Executar CLI
npm run repomix
# Executar testes
npm run test
npm run test-coverage
# Lintar código
npm run lint
Estilo de Código
- Use Biome para lintar e formatar
- Injeção de dependência para testabilidade
- Mantenha os arquivos com menos de 250 linhas
- Adicione testes para novos recursos
Diretrizes para Pull Requests
- Execute todos os testes
- Passe nas verificações de lint
- Atualize a documentação
- Siga o estilo de código existente
Configuração de Desenvolvimento
Pré-requisitos
- Node.js ≥ 18.0.0
- Git
- npm
- Docker (opcional, para executar o website ou desenvolvimento em contêiner)
Desenvolvimento Local
Para configurar o Repomix para desenvolvimento local:
bash
# Clonar repositório
git clone https://github.com/yamadashy/repomix.git
cd repomix
# Instalar dependências
npm install
# Executar CLI
npm run repomix
Desenvolvimento com Docker
Você também pode executar o Repomix usando Docker:
bash
# Construir imagem
docker build -t repomix .
# Executar contêiner
docker run -v ./:/app -it --rm repomix
Estrutura do Projeto
O projeto está organizado nos seguintes diretórios:
src/
├── cli/ # Implementação CLI
├── config/ # Manipulação de configuração
├── core/ # Funcionalidade principal
│ ├── file/ # Manipulação de arquivos
│ ├── metrics/ # Cálculo de métricas
│ ├── output/ # Geração de saída
│ ├── security/ # Verificações de segurança
├── mcp/ # Integração com servidor MCP
└── shared/ # Utilitários compartilhados
tests/ # Testes espelhando a estrutura src/
website/ # Website de documentação
├── client/ # Frontend (VitePress)
└── server/ # API Backend
Desenvolvimento do Website
O website do Repomix é construído com VitePress. Para executar o website localmente:
bash
# Pré-requisitos: Docker deve estar instalado no seu sistema
# Iniciar o servidor de desenvolvimento do website
npm run website
# Acessar o website em http://localhost:5173/
Ao atualizar a documentação, você só precisa atualizar primeiro a versão em inglês. Os mantenedores cuidarão das traduções para outros idiomas.
Processo de Release
Para mantenedores e contribuidores interessados no processo de release:
- Atualizar versão
bash
npm version patch # ou minor/major
- Executar testes e build
bash
npm run test-coverage
npm run build
- Publicar
bash
npm publish
Novas versões são gerenciadas pelo mantenedor. Se você acha que um lançamento é necessário, abra uma issue para discutir.