Zu Repomix beitragen
Vielen Dank für Ihr Interesse an Repomix! 🚀 Wir freuen uns über Ihre Hilfe, um es noch besser zu machen. Dieser Leitfaden hilft Ihnen, mit der Mitarbeit am Projekt zu beginnen.
Wie Sie beitragen können
- Repository mit Stern versehen: Zeigen Sie Ihre Unterstützung, indem Sie das Repository mit einem Stern versehen!
- Issue erstellen: Einen Fehler entdeckt? Eine Idee für ein neues Feature? Lassen Sie es uns wissen, indem Sie ein Issue erstellen.
- Pull Request einreichen: Etwas zum Beheben oder Verbessern gefunden? Reichen Sie einen PR ein!
- Weitersagen: Teilen Sie Ihre Erfahrung mit Repomix in sozialen Medien, Blogs oder in Ihrer Tech-Community.
- Repomix verwenden: Das wertvollste Feedback kommt aus der realen Nutzung. Integrieren Sie Repomix gerne in Ihre eigenen Projekte!
- Sponsern: Unterstützen Sie die Entwicklung von Repomix, indem Sie Sponsor werden.
Schnellstart
bash
git clone https://github.com/yamadashy/repomix.git
cd repomix
npm install
Entwicklungsbefehle
bash
# CLI ausführen
npm run repomix
# Tests ausführen
npm run test
npm run test-coverage
# Code linting
npm run lint
Code-Stil
- Biome für Linting und Formatierung verwenden
- Dependency Injection für Testbarkeit
- Dateien unter 250 Zeilen halten
- Tests für neue Funktionen hinzufügen
Pull-Request-Richtlinien
- Alle Tests ausführen
- Linting-Prüfungen bestehen
- Dokumentation aktualisieren
- Bestehenden Code-Stil befolgen
Entwicklungsumgebung
Voraussetzungen
- Node.js ≥ 18.0.0
- Git
- npm
- Docker (optional, für die Ausführung der Website oder containerisierte Entwicklung)
Lokale Entwicklung
So richten Sie Repomix für die lokale Entwicklung ein:
bash
# Repository klonen
git clone https://github.com/yamadashy/repomix.git
cd repomix
# Abhängigkeiten installieren
npm install
# CLI ausführen
npm run repomix
Docker-Entwicklung
Sie können Repomix auch mit Docker ausführen:
bash
# Image bauen
docker build -t repomix .
# Container ausführen
docker run -v ./:/app -it --rm repomix
Projektstruktur
Das Projekt ist in folgende Verzeichnisse unterteilt:
src/
├── cli/ # CLI-Implementierung
├── config/ # Konfigurationsverarbeitung
├── core/ # Kernfunktionalität
│ ├── file/ # Dateiverarbeitung
│ ├── metrics/ # Metriken-Berechnung
│ ├── output/ # Ausgabegenerierung
│ ├── security/ # Sicherheitsprüfungen
├── mcp/ # MCP-Server-Integration
└── shared/ # Gemeinsame Dienstprogramme
tests/ # Tests, die die src/-Struktur widerspiegeln
website/ # Dokumentationswebsite
├── client/ # Frontend (VitePress)
└── server/ # Backend-API
Website-Entwicklung
Die Repomix-Website ist mit VitePress erstellt. So führen Sie die Website lokal aus:
bash
# Voraussetzungen: Docker muss auf Ihrem System installiert sein
# Starten Sie den Website-Entwicklungsserver
npm run website
# Zugriff auf die Website unter http://localhost:5173/
Bei der Aktualisierung der Dokumentation müssen Sie nur zuerst die englische Version aktualisieren. Die Maintainer kümmern sich um die Übersetzungen in andere Sprachen.
Release-Prozess
Für Maintainer und Mitwirkende, die am Release-Prozess interessiert sind:
- Version aktualisieren
bash
npm version patch # oder minor/major
- Tests und Build ausführen
bash
npm run test-coverage
npm run build
- Veröffentlichen
bash
npm publish
Neue Versionen werden vom Maintainer verwaltet. Wenn Sie der Meinung sind, dass eine Veröffentlichung notwendig ist, öffnen Sie ein Issue, um es zu besprechen.