diff --git a/README.md b/README.md
index fc4b93c..de23dca 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,65 @@
## BSPViz
-Mein BSP Node builder und renderer für meine Seminararbeit
-# Todo:
-- [x] Implement geom utils
-- [x] Implement BSP
\ No newline at end of file
+BSPViz ist ein kompaktes Go-Tool zum Analysieren von Doom-WAD-Dateien. Es lädt
+Maps, inspiziert Geometriedaten und baut daraus BSP-Bäume samt Statistiken oder
+Visualisierungen. Das Projekt entstand im Rahmen einer Seminararbeit und dient
+als Baukasten, um verschiedene BSP-Build-Heuristiken auszuprobieren.
+
+### Features
+- Lädt klassische Doom-WADs und listet die enthaltenen Lumps
+- Extrahiert einzelne Lumps als Dateien zum Debuggen
+- Führt Geometrie-Diagnosen (Segment-Splits, Bounding Boxes) durch
+- Baut BSP-Bäume mit konfigurierbaren Parametern und misst resultierende Metriken
+- Exportiert BSP-Strukturen als DOT, optional weiterverarbeitbar zu PNG
+
+### Voraussetzungen
+- Go >= 1.25 (siehe `go.mod`)
+- Graphviz (nur nötig, wenn DOT-Dateien gerendert werden sollen)
+- Eine Doom-kompatible WAD-Datei als Eingabe
+
+#### Graphviz installieren
+- **Linux (Debian/Ubuntu):** `sudo apt install graphviz`
+- **macOS (Homebrew):** `brew install graphviz`
+- **Windows (Chocolatey):** `choco install graphviz`
+
+Alternativ stehen aktuelle Pakete und Installationshinweise auch auf der offiziellen Seite:
+
+
+### Installation
+```bash
+git clone
+cd bspviz
+go build ./...
+```
+
+Alternativ lässt sich das Tool ohne vorherigen Build direkt ausführen:
+
+```bash
+go run ./main.go -wad MYMAP.wad -map MAP01 -info
+```
+
+### Verwendung
+Wichtige Flags (vollständige Übersicht mit `-h`):
+- `-wad ` (Pflicht): Pfad zur WAD-Datei.
+- `-map `: Map-Marker wie `MAP01`, `E1M1` oder benutzerdefinierte Namen.
+- `-list`: WAD-Verzeichnis anzeigen und beenden.
+- `-info`: Basisstatistiken zu Vertices und Linedefs ausgeben.
+- `-extract `: Angegebene Lumps (z. B. `VERTEXES,LINEDEFS`) nach `-out` speichern.
+- `-geomtest`: Segment- und Split-Diagnose für die gewählte Map ausgeben.
+- `-buildbsp`: BSP-Baum erzeugen; Parameter wie `-alpha`, `-beta`, `-leafmax`,
+ `-maxdepth`, `-cands` und `-seed` steuern das Verhalten.
+- `-dot `: Gebauten BSP als DOT exportieren (setzt `-buildbsp` voraus;
+ benötigt ein installiertes Graphviz für die weitere Verarbeitung).
+
+Beispiel: BSP bauen und als PNG visualisieren (Graphviz vorausgesetzt):
+```bash
+go run ./main.go -wad MYMAP.wad -map MAP01 -buildbsp -dot tree.dot
+dot -Tpng tree.dot -o tree.png
+```
+
+### Entwicklung
+- Code formatieren: `gofmt -w .`
+- Tests ausführen: `go test ./...`
+- Temporäre Artefakte (DOT/PNG) sind über `.gitignore` bereits ausgeschlossen.
+
+Beiträge, Erweiterungen oder neue Heuristiken sind willkommen.