# ToDo 3 — Konfiguration ## Ziel der Verbesserung Zentralisierte Konfiguration statt verstreuter Hardcodierung. Konfiguration soll transparent, testbar und leicht anpassbar sein. ## Aufgaben - [ ] `config.js` oder ein zentrales Config-Modul anlegen - [ ] Alle Umgebungsvariablen an einer Stelle lesen und validieren - `PORT` - `GRBL_BASE_IP`, `GRBL_ELLBOW_IP`, `GRBL_HAND_IP` - `ROBOT_DEFAULT_FEEDRATE` - `ROBOT_USE_SPEED_CALC` - HTTPS-Zertifikatpfade und Passphrase - [ ] `startRobot.js`, `TelnetSenderGRBL`, `InfoServer.js` und weitere Module mit dem Config-Modul arbeiten lassen - [ ] Optional: `config/default.json` oder `.env` als Konfigurationsbasis bereitstellen - [ ] Fehlende oder ungültige Konfiguration frühzeitig mit klarer Fehlermeldung melden - [ ] HTTPS-Passphrase aus Umgebungsvariable lesen statt hardcoded `'abcd'` in `startRobot.js` - [ ] `logs/`-Verzeichnis beim Start automatisch anlegen (aktuell crash wenn nicht vorhanden — siehe `doc/ToDo_8_Bugs.md` Bug 4)