Ein Tool zur Übersetzung von Code zwischen verschiedenen Programmiersprachen unter Verwendung eines LLM (Large Language Model).
CodeConverter ist ein leistungsstarkes Tool, das es ermöglicht, vollständige Git-Repositories von einer Programmiersprache in eine andere zu übersetzen. Es verwendet das fortschrittliche LLM freehuntx/qwen3-coder:8b über ollama, um qualitativ hochwertige Übersetzungen durchzuführen, die die Funktionalität des ursprünglichen Codes beibehalten und gleichzeitig die Syntax an die Zielsprache anpassen.
- Übersetzung von vollständigen Git-Repositories
- Unterstützung mehrerer Programmiersprachen (Python, JavaScript, Java, C++, C)
- Beibehaltung der Projektstruktur und Dateiorganisation
- Automatische Dateinamenumwandlung entsprechend der Zielsprache
- Integration mit ollama für LLM-basierte Übersetzung
- Python 3.10 oder höher
- ollama installiert und laufend
- Das LLM
freehuntx/qwen3-coder:8bmuss in ollama verfügbar sein
-
Klonen Sie das Repository:
git clone <repository-url> cd codeconverter -
Installieren Sie die Abhängigkeiten:
uv sync uv pip install -e . -
Stellen Sie sicher, dass ollama läuft und das Modell
freehuntx/qwen3-coder:8bverfügbar ist:ollama list
python main.py <quell-repo-pfad-oder-url> <ziel-sprache> [-o <ausgabe-pfad>]# Übersetze ein lokales Python-Projekt in JavaScript
python main.py ./mein-python-projekt javascript
# Übersetze ein GitHub-Repository in Python mit benutzerdefiniertem Ausgabepfad
python main.py https://github.com/user/repo javascript -o ./uebersetztes-repo
# Übersetze ein Java-Projekt in Python mit benutzerdefiniertem Ausgabepfad
python main.py ./mein-java-projekt python -o ./uebersetztes-projekt- Python (.py)
- JavaScript (.js)
- Java (.java)
- C++ (.cpp)
- C (.c)
- Das Tool kopiert das Quell-Repository in ein neues Verzeichnis
- Es durchsucht rekursiv alle Dateien im Repository
- Für jede Datei in einer unterstützten Sprache:
- Die Dateiendung wird entsprechend der Zielsprache angepasst
- Der Dateiinhalt wird mit dem LLM übersetzt
- Ein Kommentar wird hinzugefügt, der die Übersetzung kennzeichnet
- Das übersetzte Repository wird im angegebenen Ausgabepfad gespeichert
codeconverter/
├── main.py # Haupteinstiegspunkt
├── pyproject.toml # Projekt-Konfiguration und Abhängigkeiten
├── README.md # Diese Datei
└── converter/ # Übersetzungskern
├── __init__.py # Paket-Initialisierung
└── core.py # Hauptlogik für die Code-Übersetzung
requests: Für die Kommunikation mit der ollama API
Lizenz AGPLv3