diff --git a/README.md b/README.md index 42045c6..8cb7160 100644 --- a/README.md +++ b/README.md @@ -266,8 +266,79 @@ $debug_config = [ - **E-Mail-Validierung:** Format, Blacklist, optionale Whitelist - **XSS-Schutz:** `htmlspecialchars()` fΓΌr alle Ausgaben +## 🌿 Branch-Strategie + +``` +Branches: +β”œβ”€β”€ main β†’ Produktions-Code (mit obfuscated dist/) +└── develop β†’ Entwicklungs-Code (lesbarer Source) +``` + +| Branch | Inhalt | Verwendung | +|--------|--------|------------| +| `main` | Lesbare Quellen + `dist/` Ordner | FΓΌr Produktion: Dateien aus `dist/` verwenden | +| `develop` | Nur lesbare Quellen + Build-System | FΓΌr Entwicklung | + +### Workflow + +```bash +# Entwicklung +git checkout develop +# ... Code Γ€ndern ... +npm run build # dist/ neu generieren +git add . +git commit -m "feat: ..." + +# Release +git checkout main +git merge develop +npm run build # dist/ aktualisieren +git add dist/ +git commit -m "build: Update production files" +``` + +## πŸ”¨ Build-System + +### Installation + +```bash +npm install +``` + +### Build-Befehle + +```bash +npm run build # Alles bauen (JS + CSS + PHP) +npm run build:js # Nur JavaScript obfuscieren +npm run build:css # Nur CSS minifizieren +npm run clean # dist/ Ordner lΓΆschen +``` + +### Ausgabe + +Nach dem Build enthΓ€lt der `dist/` Ordner: + +``` +dist/ +β”œβ”€β”€ assets/ +β”‚ β”œβ”€β”€ css/ +β”‚ β”‚ └── style.css # Minifiziert +β”‚ └── js/ +β”‚ β”œβ”€β”€ main.js # Obfusciert +β”‚ β”œβ”€β”€ contact.js # Obfusciert +β”‚ └── cookie-consent.js # Obfusciert +β”œβ”€β”€ config/ +β”‚ β”œβ”€β”€ config.php # Kopiert +β”‚ └── mail-config.php # Kopiert +└── includes/ + β”œβ”€β”€ header.php # Kopiert + β”œβ”€β”€ footer.php # Kopiert + └── functions.php # Kopiert +``` + ## πŸ“‹ Voraussetzungen +- **Node.js 18+** (fΓΌr Build-System) - PHP 8.0 oder hΓΆher - PHP Extensions: `session`, `json`, `filter` - FΓΌr E-Mail-Versand: PHPMailer (via Composer im Frontend)