From 0a702dac16fc588ca5dec92d227b305c3e527221 Mon Sep 17 00:00:00 2001
From: Pascal Scholz
Date: Thu, 24 Sep 2026 19:57:22 +0200
Subject: [PATCH] Add onboarding guide for Lara's Claude (repo + SSH access)
Co-Authored-By: Claude Sonnet 5
---
ONBOARDING_LARA.md | 84 ++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 84 insertions(+)
create mode 100644 ONBOARDING_LARA.md
diff --git a/ONBOARDING_LARA.md b/ONBOARDING_LARA.md
new file mode 100644
index 0000000..11c1ba7
--- /dev/null
+++ b/ONBOARDING_LARA.md
@@ -0,0 +1,84 @@
+# ONBOARDING_LARA.md – Kontext für Laras Claude
+
+Dieses Dokument gibt dir (Laras Claude Code) den Kontext, um am Projekt
+**larpaso-website** mitzuarbeiten. Gib deinem Claude Code **diese Datei
+zusammen mit `DEPLOYMENT.md` und `DEPLOYMENT_ADMIN.md`** aus dem Repo als
+Kontext, bevor es Änderungen vornimmt – die beiden anderen Dateien
+beschreiben die Server-Infrastruktur und die Sicherheits-Leitplanken im
+Detail, hier steht nur, was speziell für dich (Lara) dazukommt.
+
+---
+
+## 1. Projektüberblick
+
+- **Astro-Website** (statisch), live unter `https://larpaso.de`.
+- **Login-geschützter Editor** (Node/Express) unter `https://admin.larpaso.de`
+ für Texte/Bilder/Design ohne Code.
+- **Git**: selbstgehostetes Forgejo unter `git.larpaso.de`, Repo
+ `pascal/larpaso-website`.
+- **Deployment**: Docker Compose auf einem VPS, Caddy als zentraler Reverse
+ Proxy (bedient auch andere Dienste wie Nextcloud – **nicht anfassen**).
+
+## 2. Dein Repo-Zugang
+
+- Pascal legt dir einen Forgejo-Account an bzw. gibt dir Write-Zugriff auf
+ `pascal/larpaso-website`.
+- Hinterlege deinen eigenen SSH-Public-Key in deinem Forgejo-Profil
+ (Einstellungen → SSH-Schlüssel).
+- Klonen:
+ ```
+ git clone ssh://git@git.larpaso.de:2222/pascal/larpaso-website.git
+ ```
+
+## 3. Lokales Setup
+
+Node.js (aktuelle LTS) vorausgesetzt:
+```
+npm install
+npm run dev # lokaler Dev-Server
+npm run build # Produktions-Build nach dist/ – muss vor jedem Push fehlerfrei laufen
+```
+
+## 4. Workflow für Änderungen
+
+1. Änderung lokal mit deinem Claude umsetzen.
+2. `npm run build` muss fehlerfrei durchlaufen, bevor du pushst.
+3. Committen & pushen nach `main` auf `git.larpaso.de` (kein `node_modules`,
+ kein `dist` – steht bereits in `.gitignore`).
+4. Kurz mit Pascal absprechen, was sich geändert hat – aktuell gibt es
+ **keinen Branch-/Review-Workflow**, ihr pusht beide direkt auf `main`,
+ also kurz Bescheid geben, damit ihr euch nicht gegenseitig überschreibt.
+5. Deployment auf dem Server auslösen (siehe unten).
+
+## 5. Deployment (mit deinem SSH-Zugang)
+
+Sobald Pascal dir SSH-Zugang eingerichtet hat:
+```
+ssh @ # Adresse/Zugangsdaten bekommst du direkt von Pascal, nicht über den Chat
+cd ~/sites/larpaso-website && git pull
+cd ~/stack
+docker compose build website # nur wenn sich Website-Code geändert hat
+docker compose build admin # nur wenn sich admin/ geändert hat
+docker compose up -d website admin
+```
+Lass deinen Claude das **nicht automatisch ausführen** – SSH-Befehle auf dem
+echten Server führst du selbst manuell aus, genau wie Pascal es macht.
+
+## 6. Sicherheits-Leitplanken (gelten für dich genau wie für Pascal)
+
+- Keine Secrets/Passwörter/Tokens in Code, Commits oder Chat-Ausgaben.
+- Bestehende Dienste (`nextcloud*`, `forgejo`, `*-db`, `redis`, `caddy`)
+ nicht verändern oder neu starten.
+- Website/Admin bleiben ausschließlich im Docker-Netzwerk `web`, keine
+ Host-Ports, kein zweiter Reverse Proxy.
+- Astro bleibt statisch (`output: 'static'`), kein Server-Adapter.
+- Bei Unklarheiten zur Infrastruktur: `DEPLOYMENT.md` /
+ `DEPLOYMENT_ADMIN.md` lesen, im Zweifel Pascal fragen statt selbst zu
+ experimentieren.
+
+## 7. Content-Editor (ohne Code)
+
+Für reine Text-/Bild-/Farb-Änderungen ohne Code gibt es zusätzlich den
+Login-Editor unter `admin.larpaso.de`. Falls du dafür auch einen eigenen
+Login willst, sag das Pascal – das ist unabhängig vom SSH-/Repo-Zugang
+(siehe `DEPLOYMENT_ADMIN.md`, Abschnitt „zweiter Benutzer").