WaKi Core Plugin
Das Herzstück der Waldkindergarten-App: Das WaKi Core Plugin verwaltet Module, Sicherheit und zentrale Funktionen für alle anderen Komponenten.
Das WaKi Core Plugin ist das Herzstück der WaKi Waldkindergarten-App. Es funktioniert wie ein „Dirigent" für alle anderen Module und kümmert sich um die grundlegenden Funktionen, die alle Module benötigen.
Die Hauptaufgaben
1. Module verwalten (Das „Paket-System")
WaKi Core kontrolliert, welche Features (Module) für welchen Kindergarten freigeschaltet sind. Wenn ein Kindergarten beispielsweise nur die Chat- und Benachrichtigungs-Features gebucht hat, lädt WaKi Core nur diese Module – nicht mehr, nicht weniger. Das ist energieeffizient und sauber.
2. Design-Sprache bereitstellen (Tailwind CSS)
Alle Module sollen einheitlich aussehen. WaKi Core stellt ein gemeinsames Tailwind-CSS-System zur Verfügung, das alle Module nutzen – wie eine gemeinsame Farbpalette und Schrift für ein Kindergarten-Netzwerk.
3. React und JavaScript-Komponenten teilen
Für moderne Bedienoberflächen brauchen alle Module React (ein JavaScript-Framework). WaKi Core stellt React einmal zentral zur Verfügung, statt dass jedes Modul es selbst mitbringt. Das spart Datenmenge und macht die App schneller.
4. API-Kontrollpunkt (REST API)
WaKi Core bietet zentrale API-Schnittstellen, über die der Superadmin (Netzwerk-Administrator) sieht, welche Module in welchem Kindergarten aktiv sind, und diese Ein- und Ausschalten kann.
5. Sicherheit und Zugriff (Admin-Lockdown)
Es blockiert, dass normale Kindergarten-Admins die WordPress Plugins-Verwaltungsseite sehen. Diese Seite ist nur für den Superadmin relevant – Kindergarten-Admins sollen nur ihre freigeschalteten Features sehen und nutzen, nicht mit Plugins herumspielen.
6. Berechtigungen definieren
Für jede Rolle (Erzieher, Eltern, Kita-Leitung, etc.) setzt WaKi Core fest, wer was darf – Beispiel: „Eltern dürfen nur ganz spezifische Module sehen".
🔧 Wie funktioniert es technisch?
- Beim Start: WaKi Core wird zuerst geladen (vor allen anderen Modulen)
- Module scannen: Es sucht alle verfügbaren
waki-*Module im System - Lizenz-Check: Es schaut nach, welche Module der aktuelle Kindergarten gebucht hat
- Nur aktive Module laden: Nur die freigeschalteten Module werden wirklich aktiv geschaltet – der Rest bleibt inaktiv
- Gemeinsame Assets laden: CSS und JavaScript-Frameworks werden zentral bereitgestellt
- REST-API anbieten: Der Admin kann über API abfragen und ändern, welche Module aktiv sind
📦 Eine Analogie
WaKi Core ist wie die Zentrale eines großen Kaufhauses:
- Module = einzelne Ladengeschäfte (Chat-Shop, Benutzer-Liste-Shop, etc.)
- Tailwind & Assets = einheitliche Fassade und Wegweiser für alle Läden
- Admin Lockdown = Sicherheitspersonal, das kontrolliert, wer wo reinkommt
- Lizenzen = Welche Läden sind für dieser Kita offen?
- API = Das Buchungssystem, über das man sieht, welche Läden geöffnet sind
✨ Warum ist das wichtig?
- Einfachheit: Jeder Kindergarten zahlt nur für die Features, die er nutzt
- Konsistenz: Alle Module sehen gleich aus und funktionieren ähnlich
- Sicherheit: Zugriffe sind klar kontrolliert
- Performance: Nur das, was nötig ist, wird geladen
- Wartbarkeit: Der Core ist eine zentrale Stelle statt verteilt im Code