Zurück zur Dokumentation
Module

WaKi Core Plugin

Das Herzstück der Waldkindergarten-App: Das WaKi Core Plugin verwaltet Module, Sicherheit und zentrale Funktionen für alle anderen Komponenten.

Florian9. April 20266 Min. Lesedauer

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?

  1. Beim Start: WaKi Core wird zuerst geladen (vor allen anderen Modulen)
  2. Module scannen: Es sucht alle verfügbaren waki-* Module im System
  3. Lizenz-Check: Es schaut nach, welche Module der aktuelle Kindergarten gebucht hat
  4. Nur aktive Module laden: Nur die freigeschalteten Module werden wirklich aktiv geschaltet – der Rest bleibt inaktiv
  5. Gemeinsame Assets laden: CSS und JavaScript-Frameworks werden zentral bereitgestellt
  6. 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