Files
kiddo/project-management/project-setup.md
2026-01-15 17:52:21 +01:00

3.2 KiB
Raw Permalink Blame History

ID: SETUP_000005 | Version: 0.2.3 | Status: Draft By: Codex (GPT-5)

🧬 SETUP_GUIDE: Phase 0 - Project Genesis

Dieses Dokument ist die Master-Anweisung für das initiale Setup des Sound Architect Projekts. Wer hiervon abweicht, riskiert Daten-Chaos – und glaub mir, das willst du nicht.

1. Verzeichnis-Struktur (The Skeleton)

Erstelle die Verzeichnisse exakt so. Wir trennen Planung und Anforderungen (project-management) strikt von der Umsetzung (src).

# ID: SCRIPT_000001
# Management & Requirements
mkdir -p project-management/requirements/{epics,stories,tasks,bugs}

# Source Code (Hexagonal Architecture)
mkdir -p src/{core,ports,adapters,ui}

# Infrastructure & Docs
mkdir -p tests docs/architecture

2. Das Logbuch-Gesetz (CHANGELOG.md)

Das Logbuch im Hauptverzeichnis ist die einzige chronologische Wahrheit des Projekts. Es wird im Root-Verzeichnis abgelegt, um maximale Sichtbarkeit zu garantieren.

Format

Das Logbuch folgt einem strikten Tabellenformat:

  • Datum
  • Typ
  • Beschreibung

Beispiel: DD.MM.YYYY | Icon + Kürzel | ID (optional): Präzise Beschreibung der Änderung.

Die Legende

Verwende ausschließlich diese Typen für das Logbuch und Commit-Messages:

Icon Typ Bedeutung
🚀 Init Projekt-Setup & Initialisierung
📝 Req Requirements / Anforderungen
🏛️ Arch Architektur-Entscheidungen
🎨 UI UI-Implementation / Design
✅ Done Feature oder Story abgeschlossen
⚙️ Code Allgemeine Code-Implementation
🔊 Audio Spezifische Audio-Features
🗣️ UX User Experience Verbesserungen
✨ Feature Neues Feature / Funktionalität
🛠️ CRUD Asset-Management (Delete/Rename/etc.)
🏗️ Planning Grobplanung von Epics & Stories

3. Die „No-Dirt“ Regel (.gitignore)

Erstelle eine .gitignore im Root, damit kein digitaler Müll unser sauberes Labor kontaminiert.

# ID: DOC_000002
__pycache__/
*.py[cod]
*$py.class
.venv/
venv/
ENV/
.env
.vscode/
.idea/
*.log
output/
temp/

🛠️ Genesis-Automatisierungsscript

Kopiere diesen Block in dein Terminal, um das Labor mit einem Knall hochzufahren.

# ID: SCRIPT_000002
# 1. Verzeichnisse anlegen
mkdir -p project-management/requirements/{epics,stories,tasks,bugs} src/{core,ports,adapters,ui} tests docs/architecture

# 2. Logbuch initialisieren (incl. Legende)
cat <<EOF > CHANGELOG.md
# 📜 Projekt-Logbuch (Changelog)
# ID: DOC_000001

| Datum | Typ | Beschreibung |
|---|---|---|
| $(date +%d.%m.%Y) | 🚀 Init | **PROJECT_SETUP**: Struktur nach SETUP_000005 initialisiert. |

---
## 🔑 Legende
* 🚀 **Init** = Setup | 📝 **Req** = Requirements | 🏛️ **Arch** = Architektur
* 🎨 **UI** = Design | ✅ **Done** = Abgeschlossen | ⚙️ **Code** = Implementation
* 🔊 **Audio** = Audio-Engine | 🗣️ **UX** = User Experience | ✨ **Feature** = Neu | 🛠️ **CRUD** = Management
EOF

# 3. .gitignore erstellen
cat <<EOF > .gitignore
__pycache__/
.venv/
.env
*.log
EOF

# 4. Status-File vorbereiten
echo "# 📊 Projekt-Status" > project-management/PROJECT_STATUS.md

# 5. Version initialisieren
echo "0.1.0" > VERSION

echo "Labor ist bereit. Let's create some ghosts! 👻☕"