Dokumentation: CakePHP – Netzwerk & Datenstruktur
Stand: 2025-05-09
Modul: Crumbforest – Schnittstellen zu TTYD, RUST & Kind-API
🍰 Übersicht: Architektur & Flow
Frontend / Terminal Interface
- ttyd (für Kinderfragen, Lernzugang, Debugging)
- CakePHP View-Templates (kinderfreundlich, markdown-fähig)
Backend (CakePHP)
- Version: PHP 8.3 (getestet)
- Framework: CakePHP 4.x
- Authentifizierung: implementiert (Custom UserProvider via MySQL)
- Logging: KrümelLog (Zeitstempel, Emoji, Quelle, Nachricht)
Database (MariaDB/MySQL)
- DB: kuchenwald
- User: krümel_user (mit Schreibrechten)
- Init-Script: init.sql (erstellt Tabellen & Seed-Benutzer)
Routen & Controller
- /krümel/index – Übersicht & Logs
- /krümel/add – Krümel-Eintrag via POST
- /eule/view – symbolisches Weisheitsmodul
Middleware & Services
- KrümelAuthComponent (CakePHP)
- Connection zur RUST-API via REST (/bittrain, /echo, /eule)
- Token-Passing in Planung (OAuth optional, zukunftssicher)
📊 Datenstruktur (Auszug)
users
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE,
password_hash VARCHAR(255) NOT NULL,
role ENUM('admin', 'child', 'observer') DEFAULT 'child',
created DATETIME DEFAULT CURRENT_TIMESTAMP
);
kruemel_logs
CREATE TABLE kruemel_logs (
id INT AUTO_INCREMENT PRIMARY KEY,
created DATETIME DEFAULT CURRENT_TIMESTAMP,
emoji CHAR(4),
message TEXT,
source VARCHAR(255)
);
🔌 Verbindung & API-Gateway
- Alle Shell-Aktivitäten (TTYD) werden symbolisch und technisch an CakePHP gemappt (via
shell_dispatcher.sh) - TTYD stellt Kommandozeilen-Zugang bereit für geschützte Umgebungen (z. B. mit
sudo -u krümel_user) - Brücke zu Rust wird über HTTP-POST & GET (
fetch,curl, oderHttpClient) betrieben - Logging erfolgt doppelt: in
KrümelLog(DB) &krümel_api_spec.rsals Echo
🧠 To Do / Vision
- [ ] Child-Safe API Wrapper für Rust
- [ ] GraphQL für komplexe Datenabfragen (KrümelHistory, EulenDialoge)
- [ ] Admin-Dashboard für Pädagog:innen
- [ ] Frequenzbasierte Access-Kontrolle: Kind, Crew, Commander
- [ ] Export-Modul für Markdown, PDF, Audio
Letzter Commit: curl -X POST /krümel -d '🌱 Neues Bit im Wald'
🦉 Fragen leiten wir an die Eule weiter.
Alles andere committed der Kuchen.