feat: playground static site with cursor webhook deploy

Scaffold nginx + deploy-hook stack for playground.schwenk.online,
Gitea cursor workflow, directory-based public/ content, and boka
bootstrap via git clone.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Frank Schwenk
2026-07-05 16:07:24 +02:00
commit 8cdde429f5
21 changed files with 1173 additions and 0 deletions
+55
View File
@@ -0,0 +1,55 @@
# SOUL.md — playground
## Agent Quick Start
- **What:** Statische Experimentier-Site — `@cursor` in Gitea-Issues erzeugt HTML unter `public/<slug>/`, Auto-Deploy per Push-Webhook auf boka.
- **Domain:** https://playground.schwenk.online
- **Gitea:** `ssh://git@gitea.schwenk.online:2222/froxxxy/playground.git`
- **Server:** boka → `/home/frank/playground.schwenk.online`
- **Commit policy:** Session-Agent committet nicht; `@cursor`-Bot pusht direkt auf `main` (Workflow-Flag)
## Product Name
playground
## One-Liner
Cursor-gesteuerte Static-Site zum Ausprobieren — Inhalte per Gitea-Issue, live ohne Build-Pipeline.
## Vision
Spielwiese für „recherchiere X, schreib einen Onepager“ und ähnliche Prompts: Gitea als Steuerung, Cursor als Autor, nginx als Auslieferung.
## Audience
Fränky — und ggf. Gäste mit Link zu einem konkreten Pfad (`/thema-xy/`).
## Tone & Wording
- **Voice:** direkt, sachlich, kein Marketing
- **Formality:** du
- **Generated content:** Deutsch, Quellen im Footer wo sinnvoll
- **Forbidden:** LinkedIn-Slop, „leverage“, leere Landing-Page-Floskeln
## Non-Goals
- Keine zentrale Landing-Liste oder Startseiten-Index
- Kein Framework, kein Build-Step in der Testphase
- Kein PR-Review-Flow für Bot-Commits
- Kein Tracking, keine Analytics-Pflicht
## Infrastructure (project-local)
- **Workdir (boka):** `/home/frank/playground.schwenk.online` — Git-Clone dieses Repos
- **Webroot:** `public/` → nginx
- **Deploy:** Gitea Push-Webhook → `https://playground.schwenk.online/hooks/deploy`
- **Cursor workflow:** `.gitea/workflows/cursor.yml` mit `push_to_default_branch: "true"`
## Project-Specific Rules
- Content lebt **verzeichnisbasiert** unter `public/<kebab-slug>/` — typisch `index.html`, keine feste Dateiliste.
- Cursor entscheidet selbst: neues Verzeichnis vs. `index2.html` / Assets im bestehenden Ordner.
- Plain HTML/CSS only — kein npm, kein Bundler.
- **Kein** `public/index.html` und keine Pflege einer Übersichtsseite, außer Fränky fordert es explizit.
- Bot-Commits nur unter `public/` und nur was zum Issue passt — keine Drive-by-Änderungen an Infra-Dateien.
- `@cursor` in Issue-Kommentaren: Aufgabe erledigen, kurz im Issue kommentieren, auf `main` pushen.