Dev-Machine Setup
EEDC Entwicklungsrechner einrichten
Abschnitt betitelt „EEDC Entwicklungsrechner einrichten“Anleitung zum Aufsetzen einer identischen Entwicklungsumgebung auf einem neuen Ubuntu 24.04 Rechner.
Schnellstart: Setup-Script ausführen
Abschnitt betitelt „Schnellstart: Setup-Script ausführen“# Script herunterladen und ausführencurl -fsSL https://raw.githubusercontent.com/supernova1963/eedc-homeassistant/main/docs/setup-devmachine.sh | bashOder manuell Schritt für Schritt nach dieser Anleitung.
1. System-Pakete
Abschnitt betitelt „1. System-Pakete“sudo apt update && sudo apt install -y \ git \ curl \ python3.12 \ python3.12-venv \ python3-pip \ build-essential2. Node.js via NVM
Abschnitt betitelt „2. Node.js via NVM“# NVM installierencurl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
# Shell neu ladensource ~/.bashrc # oder: source ~/.zshrc
# Node.js 20 installieren und als Standard setzennvm install 20nvm use 20nvm alias default 20
# Prüfennode --version # → v20.x.xnpm --version # → 10.x.x3. Claude Code installieren
Abschnitt betitelt „3. Claude Code installieren“npm install -g @anthropic-ai/claude-code
# Prüfenclaude --version # → 2.1.50 (oder neuer)Bei der ersten Verwendung: claude ausführen und mit Anthropic-Account authentifizieren.
4. Git konfigurieren
Abschnitt betitelt „4. Git konfigurieren“git config --global user.name "supernova1963"git config --global user.email "supernova1963@users.noreply.github.com"git config --global init.defaultBranch main
# GitHub SSH-Key einrichten (empfohlen)ssh-keygen -t ed25519 -C "supernova1963@users.noreply.github.com"cat ~/.ssh/id_ed25519.pub# → Public Key zu GitHub hinzufügen: https://github.com/settings/keys5. VS Code installieren
Abschnitt betitelt „5. VS Code installieren“# .deb-Paket herunterladen und installierencurl -L "https://code.visualstudio.com/sha/download?build=stable&os=linux-deb-x64" -o /tmp/vscode.debsudo dpkg -i /tmp/vscode.debsudo apt install -f # ggf. fehlende Dependencies nachinstallieren6. VS Code Erweiterungen installieren
Abschnitt betitelt „6. VS Code Erweiterungen installieren“# Alle Extensions auf einmal installieren:code --install-extension anthropic.claude-codecode --install-extension andrepimenta.claude-code-chatcode --install-extension ms-python.pythoncode --install-extension ms-python.vscode-pylancecode --install-extension ms-python.debugpycode --install-extension ms-python.vscode-python-envscode --install-extension charliermarsh.ruffcode --install-extension esbenp.prettier-vscodecode --install-extension dbaeumer.vscode-eslintcode --install-extension bradlc.vscode-tailwindcsscode --install-extension eamodio.gitlenscode --install-extension usernamehw.errorlenscode --install-extension qwtel.sqlite-viewercode --install-extension redhat.vscode-yamlcode --install-extension ms-vscode-remote.remote-sshcode --install-extension ms-vscode-remote.remote-ssh-editcode --install-extension ms-vscode.remote-explorercode --install-extension ms-azuretools.vscode-dockercode --install-extension ms-azuretools.vscode-containerscode --install-extension christian-kohler.path-intellisenseErweiterungs-Übersicht
Abschnitt betitelt „Erweiterungs-Übersicht“| Extension | Zweck |
|---|---|
anthropic.claude-code | Claude Code (KI-Assistent) |
andrepimenta.claude-code-chat | Claude Code Chat-Panel |
ms-python.python + pylance + debugpy | Python-Stack |
ms-python.vscode-python-envs | Virtuelle Environments |
charliermarsh.ruff | Python Linter/Formatter |
esbenp.prettier-vscode | Code-Formatierung (JS/TS) |
dbaeumer.vscode-eslint | TypeScript/JS Linting |
bradlc.vscode-tailwindcss | Tailwind CSS Autocomplete |
eamodio.gitlens | Git-Verlauf und Blame |
usernamehw.errorlens | Fehler direkt im Code |
qwtel.sqlite-viewer | SQLite-Datenbank anzeigen |
redhat.vscode-yaml | YAML-Unterstützung |
ms-vscode-remote.remote-ssh | SSH-Fernzugriff (z.B. Server 192.168.1.3) |
ms-azuretools.vscode-docker | Docker-Integration |
christian-kohler.path-intellisense | Pfad-Autocomplete |
7. VS Code User-Einstellungen
Abschnitt betitelt „7. VS Code User-Einstellungen“Datei: ~/.config/Code/User/settings.json
{ "claudeCodeChat.thinking.intensity": "ultrathink", "claudeCode.preferredLocation": "panel", "redhat.telemetry.enabled": false}mkdir -p ~/.config/Code/Usercat > ~/.config/Code/User/settings.json << 'EOF'{ "claudeCodeChat.thinking.intensity": "ultrathink", "claudeCode.preferredLocation": "panel", "redhat.telemetry.enabled": false}EOF8. Projekte klonen
Abschnitt betitelt „8. Projekte klonen“mkdir -p ~/claudecd ~/claude
# eedc-homeassistantgit clone git@github.com:supernova1963/eedc-homeassistant.git# oder HTTPS: git clone https://github.com/supernova1963/eedc-homeassistant.git
# eedc-communitygit clone git@github.com:supernova1963/eedc-community.git# oder HTTPS: git clone https://github.com/supernova1963/eedc-community.git9. Backend einrichten
Abschnitt betitelt „9. Backend einrichten“cd ~/claude/eedc-homeassistant
# Python venv erstellen (einmalig)python3 -m venv eedc/backend/venv
# Dependencies installierensource eedc/backend/venv/bin/activatepip install -r eedc/backend/requirements.txtdeactivate10. Frontend einrichten
Abschnitt betitelt „10. Frontend einrichten“cd ~/claude/eedc-homeassistant/eedc/frontend
# Node.js 20 sicherstellennvm use 20
# Dependencies installierennpm install11. Entwicklungsserver starten
Abschnitt betitelt „11. Entwicklungsserver starten“Terminal 1 – Backend:
cd ~/claude/eedc-homeassistant/eedcsource backend/venv/bin/activateuvicorn backend.main:app --reload --port 8099Terminal 2 – Frontend:
cd ~/claude/eedc-homeassistant/eedc/frontendnpm run devBrowser:
- Frontend (mit Hot-Reload): http://localhost:3000
- API-Docs: http://localhost:8099/api/docs
Demo-Daten laden:
curl -s -X POST http://localhost:8099/api/import/demo | python3 -m json.tool12. VS Code Workspace öffnen
Abschnitt betitelt „12. VS Code Workspace öffnen“# Beide Projekte als Workspace öffnencode ~/claude/eedc-homeassistant# oder beide gleichzeitig:code ~/claude/eedc-homeassistant ~/claude/eedc-communityVS Code erkennt das Python-venv automatisch wenn eedc/backend/venv/ vorhanden ist.
Überprüfung
Abschnitt betitelt „Überprüfung“# Alle Versionen prüfenecho "=== System ==="python3 --version # Python 3.12.xnode --version # v20.x.xnpm --version # 10.x.xgit --version # 2.x.xclaude --version # 2.x.x
echo "=== Projekt ==="ls ~/claude/eedc-homeassistant/eedc/backend/venv/bin/python3 # venv vorhandenls ~/claude/eedc-homeassistant/eedc/frontend/node_modules/.bin/vite # npm installiert
echo "=== Git ==="git config --global user.email # supernova1963@users.noreply.github.com| Service | Port | URL |
|---|---|---|
| Frontend Dev Server (Vite) | 3000 | http://localhost:3000 |
| Backend API (uvicorn) | 8099 | http://localhost:8099 |
| API Docs (Swagger) | 8099 | http://localhost:8099/api/docs |
Notizen
Abschnitt betitelt „Notizen“- Python venv: liegt unter
eedc/backend/venv/– nicht committen (in.gitignore) - node_modules: liegt unter
eedc/frontend/node_modules/– nicht committen - Datenbank: liegt unter
eedc/data/eedc.db(wird beim ersten Start erstellt) - NVM: bei neuen Terminals ggf.
nvm use 20ausführen, falls Node-Version nicht stimmt - VS Code Python Interpreter: nach dem Öffnen des Projekts unten rechts auf den Interpreter klicken und
eedc/backend/venv/bin/python3wählen