Ein freier, webbasierter Struktogrammeditor zur Erstellung von Nassi-Shneiderman-Diagrammen mit automatischer Code-Generierung.
Dieses Projekt ist ein Fork des ursprünglichen Struktogrammeditors der TU Dresden. Es wird aktiv weiterentwickelt und um neue Features erweitert.
- 🎨 Intuitive grafische Oberfläche zur Erstellung von Struktogrammen
- 🔄 Code-Generierung für Python, Python ab v3.10, PHP, Java, C#, C++ und C
- 💾 Export als PNG-Bild oder PDF
- 🔗 Teilen von Diagrammen über URL (Zustand wird in URL-Parametern gespeichert)
- 📦 Kann lokal ohne Server genutzt werden
- 🎯 Konfigurierbare Element-Auswahl für verschiedene Einsatzszenarien
Das Tool kann direkt im Browser verwendet werden, ohne Installation.
- Lade die neueste Version herunter (siehe Download)
- Entpacke die ZIP-Datei
- Öffne die
index.htmlDatei in einem modernen Webbrowser
Der Editor kann über URL-Parameter angepasst werden, um verschiedene Elemente ein- oder auszublenden.
- Grundelemente: Anweisung, Eingabe, Ausgabe
- Schleifen: Zählergesteuerte Schleife, Kopfgesteuerte Schleife, Fußgesteuerte Schleife
- Verzweigungen: Verzweigung, Fallunterscheidung
- Weitere: Try-Catch-Block, Funktionsblock
Als Standard werden alle Elemente geladen. Über URL-Parameter können spezifische Konfigurationen aktiviert werden:
Für Python:
index.html?config=python
Für Python mit Funktionsblöcken:
index.html?config=python_func
Der Code-Generator unterstützt folgende Sprachen:
- Python (< v3.10)
- Python ab v3.10 (mit match-case)
- PHP
- Java
- C#
- C++
- C (eingeschränkt: Try-Catch wird nicht unterstützt)
Die aktuellste Version kann von GitHub heruntergeladen werden:
Nach dem Herunterladen und Entpacken kann die index.html direkt im Browser geöffnet werden.
Ursprüngliche Entwicklung:
- Klaus Ramm
- Thiemo Leonhardt
- Tom-Maurice Schreiber
Weiterentwicklung und Wartung:
- Mike Barkmin (@mikebarkmin)
Beiträge sind herzlich willkommen! Siehe Entwicklung für weitere Informationen.
Dieses Projekt ist unter der MIT-Lizenz lizenziert. Siehe license.md für Details.
Die Entwicklung basiert auf Node.js und webpack. Das Projekt verwendet npm zur Verwaltung der Abhängigkeiten.
- Node.js (v14 oder höher empfohlen)
- npm (wird mit Node.js mitgeliefert)
- Git
Klone das Repository und installiere die Abhängigkeiten:
git clone https://github.com/openpatch/struktog.git
cd struktog
npm installStartet einen lokalen Entwicklungsserver mit Hot-Reloading:
npm run watchDer Server läuft standardmäßig auf http://localhost:8081
Erstellt einen optimierten Build im Ordner ./build:
npm run buildsrc/- Quellcodeviews/- UI-Komponentenmodel/- Datenmodellepresenter/- Präsentationslogikhelpers/- Hilfsfunktionen
build/- Kompilierte Dateien (wird generiert)webpack.config.js- Webpack-Konfiguration
Siehe CHANGELOG.md für eine detaillierte Liste der Änderungen.
Dieses Projekt basiert auf dem ursprünglichen Struktogrammeditor der Didaktik der Informatik der TU Dresden.