Contribuir a Repomix
¡Gracias por tu interés en Repomix! 🚀 Nos encantaría contar con tu ayuda para mejorarlo aún más. Esta guía te ayudará a comenzar a contribuir al proyecto.
Cómo contribuir
- Marcar el repositorio con una estrella: ¡Muestra tu apoyo marcando el repositorio con una estrella!
- Crear un issue: ¿Has encontrado un error? ¿Tienes una idea para una nueva función? Háznoslo saber creando un issue.
- Enviar un Pull Request: ¿Has encontrado algo para arreglar o mejorar? ¡Envía un PR!
- Difundir la palabra: Comparte tu experiencia con Repomix en redes sociales, blogs o con tu comunidad tecnológica.
- Usar Repomix: Los mejores comentarios provienen del uso en el mundo real, así que no dudes en integrar Repomix en tus propios proyectos.
- Patrocinar: Apoya el desarrollo de Repomix convirtiéndote en patrocinador.
Inicio rápido
bash
git clone https://github.com/yamadashy/repomix.git
cd repomix
npm install
Comandos de desarrollo
bash
# Ejecutar CLI
npm run repomix
# Ejecutar pruebas
npm run test
npm run test-coverage
# Linting de código
npm run lint
Estilo de código
- Usa Biome para linting y formateo
- Inyección de dependencias para la testabilidad
- Mantén los archivos por debajo de las 250 líneas
- Agrega pruebas para las nuevas funciones
Pautas para Pull Requests
- Ejecuta todas las pruebas
- Pasa las comprobaciones de linting
- Actualiza la documentación
- Sigue el estilo de código existente
Configuración de Desarrollo
Requisitos previos
- Node.js ≥ 18.0.0
- Git
- npm
- Docker (opcional, para ejecutar el sitio web o el desarrollo en contenedores)
Desarrollo local
Para configurar Repomix para desarrollo local:
bash
# Clonar el repositorio
git clone https://github.com/yamadashy/repomix.git
cd repomix
# Instalar dependencias
npm install
# Ejecutar CLI
npm run repomix
Desarrollo con Docker
También puedes ejecutar Repomix usando Docker:
bash
# Construir imagen
docker build -t repomix .
# Ejecutar contenedor
docker run -v ./:/app -it --rm repomix
Estructura del proyecto
El proyecto está organizado en los siguientes directorios:
src/
├── cli/ # Implementación de CLI
├── config/ # Manejo de configuración
├── core/ # Funcionalidad principal
│ ├── file/ # Manejo de archivos
│ ├── metrics/ # Cálculo de métricas
│ ├── output/ # Generación de salida
│ ├── security/ # Comprobaciones de seguridad
├── mcp/ # Integración de servidor MCP
└── shared/ # Utilidades compartidas
tests/ # Pruebas que reflejan la estructura src/
website/ # Sitio web de documentación
├── client/ # Frontend (VitePress)
└── server/ # API de Backend
Desarrollo del sitio web
El sitio web de Repomix está construido con VitePress. Para ejecutar el sitio web localmente:
bash
# Requisitos previos: Docker debe estar instalado en su sistema
# Iniciar el servidor de desarrollo del sitio web
npm run website
# Acceder al sitio web en http://localhost:5173/
Al actualizar la documentación, solo necesita actualizar primero la versión en inglés. Los mantenedores se encargarán de las traducciones a otros idiomas.
Proceso de lanzamiento
Para mantenedores y colaboradores interesados en el proceso de lanzamiento:
- Actualizar versión
bash
npm version patch # o minor/major
- Ejecutar pruebas y construcción
bash
npm run test-coverage
npm run build
- Publicar
bash
npm publish
Las nuevas versiones son gestionadas por el mantenedor. Si crees que es necesario un lanzamiento, abre un issue para discutirlo.