larpaso-website/ONBOARDING_LARA.md
Pascal Scholz 0a702dac16 Add onboarding guide for Lara's Claude (repo + SSH access)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-24 19:57:22 +02:00

84 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 <dein-user>@<server> # 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").