Files
2026-08-20 15:28:44 +02:00

7.9 KiB

SOUL — 0012.de

Diese Datei ist das Herzstück des Projekts: wofür der Webspace existiert und wie wir daran arbeiten.
Für Menschen, für zukünftige Agents, für Frank-in-6-Monaten-der-vergessen-hat-warum-0012-unabhängig-von-boka-läuft.


Was dieses Projekt ist

0012.de ist kein zweiter vServer und keine Visitenkarte. Es ist ein unabhängiger wint.global Classic-Webspace (Plesk, PHP, FTP-Deploy) — bewusst getrennt von boka (Webtropia VPS), damit ein Ausfall des VPS nicht den letzten externen Beobachter mitnimmt.

Tagline (Landing): Eine Website · kein Inhalt · keine Entschuldigung

Drei Rollen, klar getrennt:

Rolle Wo Zweck
Öffentliche Präsenz / (public/index.php) Brutalistischer Baustellen-Platzhalter — Domain bleibt frei für späteres Eigenes
Externes Monitoring monitor.php, /monitor/ Pull-Checks (HTTPS/SSL) + Push von boka; Alarm per E-Mail
Mail-Infrastruktur Plesk SMTP-Relay, Postfächer für Domains ohne eigenen Mailserver

Root ist kein Status-Dashboard. Ops leben unter /monitor/ (noindex) — nicht verlinkt von der Landing.


Stimme & Ton

Zwei Gesichter, eine Domain — nicht vermischen.

Landing (/)

  • Sprache: Deutsch. Ironisches Fake-Corporate: „Was wir anbieten", Roadmap mit 3 %-Fortschrittsbalken, Pressestimmen aus dem Logfile.
  • Anrede: „Sie" — bewusst steif, als Gegenpol zu schwenk.online.
  • Haltung: Sarkasmus ohne Entschuldigung. Lieber eine scharfe Zeile als Marketing-Sprech.
  • Tabu: Keine IPs, Tokens, internen Hostnamen oder Ops-Details auf /.

Status (/monitor/)

  • Sprache: Englisch (Labels: ok / warn / down, „last push X min ago"). Sachlich, read-only, ohne Witz.
  • Zielgruppe: Frank beim Debuggen — nicht SEO, nicht Besucher-Magnet.

Repo-Dokumentation (README.md, MONITORING.md, todo/)

  • Sprache: Deutsch, direkt, ops-tauglich.
  • Stil: Tabellen und Checklisten statt Prosa-Wälzer.

Werte (implizit): Unabhängigkeit vor Bequemlichkeit. Wenig bewegen, was läuft. Secrets bleiben in .env — nie in Git, nie auf öffentlichen Seiten.

Wording-Beispiele

Kontext Gut Schlecht
Landing — Status „Status: unbelegt" „Coming soon — exciting updates!"
Landing — Datenschutz „Wir sammeln nichts. Nicht aus Tugend — aus Inkompetenz." „Ihre Daten sind uns wichtig."
Monitor — leer „Monitoring not initialized" „Oops! Something went wrong 😢"
Monitor — Heartbeat „boka: last push 4 min ago · disk 62 %" Interne IP oder Token-Hinweis
Alarm-Mail Konkret: welcher Target, seit wann, Link zu Docs „Critical incident detected" ohne Kontext

Visuelle & technische DNA

Element Ja Nö
Dark brutalist, Monospace (IBM Plex Mono) ✓
Akzent #c8ff00 (acid), Warnung #ff2a2a, Hintergrund #0a0a0a ✓
Inline CSS, kein JS für Landing/Monitor ✓
Mobile lesbar (Breakpoint ~520px) ✓
noindex auf Ops-Seiten ✓
Comic Sans ✓ (explizit — „never again")
Bootstrap, Stock-Corporate, WordPress-Look ✓
Framework-Bloat (Laravel, React auf Root) ✓
Secrets/IPs auf öffentlichen Seiten ✓
Link von / nach /monitor/ ✓

Technik-Philosophie: Plain PHP 8+, declare(strict_types=1), shared hosting ohne Composer-Pflicht auf dem Server. Deploy per ./scripts/deploy.sh (FTP → httpdocs + private/config). Konfiguration: lokal .env, auf dem Webspace server.env (via sync-server-env.py). Zwei Repos: dieses (Pull, Ingest, UI) + ~/server auf boka (Push-Skript, Cron).

Signature-Features (Teil der Identität):

  • Pull + Push-Monitoring — Webspace sieht boka von außen; interne Metriken nur per Push
  • Brutalistische Baustelle auf / — ehrlicher Platzhalter statt Fake-Launch
  • Domain-Inventar in DOMAINS.md — langfristige Übersicht, nicht Runtime

Zielgruppe

Wer Erwartung
Frank (Primär) Zuverlässige externe Checks, Mail-Relay, deploybare PHP ohne Drama
Zufällige Besucher auf / Kurzer Schmunzler oder Verwirrung — beides ok
Niemand auf /monitor/ Seite ist Ops-Werkzeug, nicht Marketing (noindex)

Vision

0012.de existiert, damit Infrastruktur einen unabhängigen Zeugen hat: Wenn Traefik, Gitea oder der ganze VPS stirbt, kann der Webspace noch alarmieren — weil er woanders liegt.

Die Root-Domain bleibt bewusst unbelegt (Baustellen-Ästhetik), bis ein eigenes Projekt reif ist — Portfolio, Experiment, Kunst, Katalog, whatever. Bis dahin: Platzhalter mit Haltung, nicht leere 404.

Monitoring und Mail sind Produktions-Infrastruktur, keine Nebenbei-Spielerei. Änderungen an Targets (config/targets.php) nach Infra-Review deployen.


Wie wir zusammenarbeiten

Frank liefert, Agent bindet ein

Offene Arbeit in todo/ (nummeriert, mit Priorität) — nicht nur im Kopf:

Datei Zweck
todo/README.md Übersicht, Reihenfolge, Abhängigkeiten
NOTES.md Scratchpad, Session-Park
SOUL.md Vision, Ton, Arbeitsweise

Regel: Fokussierte Änderungen — kein Scope-Creep in public/index.php, wenn die Aufgabe Monitoring ist (und umgekehrt).

Arbeitsmodus Agent

  1. Root vs. /monitor/ trennen — Landing-Ton nicht ins Ops-Dashboard schmieren.
  2. Deploy-Pfad respektieren — public/ + config/ + server.env; .env bleibt lokal.
  3. Zwei Repos im Kopf — Push-Logik auf boka (todo/04, ~/server), PHP hier.
  4. Keine Secrets in Commits, Chat oder öffentlichem HTML.
  5. Keine Commits, unless Frank explizit will.
  6. Plesk/Cron/Prod — dokumentieren in todo/, nicht raten; Destruktives nur mit Freigabe.

Prioritäten bei Konflikten

Verfügbarkeit & Alarmierung > neue Website-Features
Sicherheit (keine Leaks) > öffentliche Bequemlichkeit
Einfaches PHP > Framework-Upgrade
Docs aktuell > cleverer Code ohne README

Anti-Manifest (Non-Goals)

  • Kein Ersatz für boka — kein Docker, kein Traefik, kein App-Hosting auf 0012
  • Kein schwenk.online-Klon — andere Domain, andere Aufgabe (Visitenkarte vs. Webspace-Ops)
  • Kein WordPress/CMS auf Root — siehe SITE.md
  • Kein Monitoring auf / — Kacheln nur unter /monitor/
  • Keine dunklen Muster — kein Tracking, kein Engagement-Bait auf der Baustelle
  • Kein Feature-Bloat — lieber ein Check mehr in targets.php als ein Dashboard-Framework
  • Kein „professionelles" Corporate-Deutsch auf der Landing — der Witz ist das Feature
  • Kein Comic Sans — ausnahmslos

Projekt-spezifische Regeln

  • Öffentliche Seiten: keine IPs, Tokens, .env-Inhalte — auch nicht „nur kurz zum Testen"
  • config/targets.php: nach manuellem Infra-Review _meta.last_reviewed_at bumpen und deployen
  • Alarm-Schwellen und Plesk-Cron: in MONITORING.md / todo/05 nachschlagen, nicht erfinden
  • Mail-Zugangsdaten nur in .env / Plesk — siehe HOSTING.md, todo/02-email-smtp.md

Für Agents: Quick Start

  1. SOUL.md lesen (du bist hier)
  2. README.md — Rollen, Struktur, Schnellstart
  3. MONITORING.md — Architektur Pull/Push
  4. SITE.md — was auf / vs. /monitor/ gehört
  5. Änderungen am Landing-Ton gegen SOUL abgleichen; Monitor bleibt sachlich-englisch
  6. Deploy: .env füllen → python3 scripts/sync-server-env.py → ./scripts/deploy.sh
  7. Offene Arbeit: todo/README.md

Ein Satz zum Mitnehmen

0012.de ist der unabhängige Außenposten — brutalistische Leerfläche nach vorn, zuverlässiges Monitoring und Mail im Hintergrund, gebaut für den Tag, an dem boka nicht mehr antwortet.