Wo Plerino passt
Plerino ist ein universelles Backend-Framework. Jeder Anwendungsfall nennt, was das Framework dafür bereitstellt, und die beteiligten Pakete, die alle heute im Repository vorhanden sind.
Ökosystem entdeckenKontakt aufnehmen
Plerino befindet sich vor Version 1.0. Diese Seiten beschreiben, was umgesetzt ist, und sind keine Produktionsreferenzen.
API-Backends
Dienste, die JSON über HTTP bereitstellen und vorhersagbares Routing, strikte Eingabeverarbeitung und klare Fehlerverträge benötigen.
- Routen werden in einen statischen Matcher kompiliert; überlappende Routen lassen den Build fehlschlagen.
- Typisierte Input-Klassen und Attributregeln validieren Anfragen; Fehler werden als RFC 9457 Problem Details zurückgegeben.
- Session- und Bearer-Token-Guards mit gehashten API-Tokens, die Scopes tragen und widerrufen werden können.
- Ausgehende Aufrufe laufen über einen PSR-18-Client mit SSRF-Schutz und Wiederholungen.
Beteiligte Pakete
SaaS- und Multi-Service-Plattformen
Produkte aus mehreren Diensten, die Anmeldung, Lokalisierung, Geldbeträge und Kundenkommunikation gemeinsam nutzen.
- Anmeldung mit Passkeys, TOTP und OAuth-Anbietern sowie Deny-by-default-Policies für RBAC, ABAC und ReBAC.
- Exakte Geldbeträge mit ISO-4217-Währungen und ICU MessageFormat für lokalisierte Texte.
- E-Mails und Benachrichtigungen werden an Queues übergeben, mit Kanalpräferenzen pro Empfänger.
- Typisierte Konfiguration wird zur Build-Zeit kompiliert; Secrets bleiben außerhalb der kompilierten Datei.
Beteiligte Pakete
Echtzeitanwendungen
Live-Dashboards, Funktionen für die Zusammenarbeit und Statusmeldungen, die Verbindungsabbrüche überstehen müssen.
- Channels werden mit typisierten Mustern deklariert und durch Policies geschützt, die zur Build-Zeit geprüft werden.
- Presence-Listen und ein Replay-Fenster lassen einen Client nach dem Wiederverbinden dort fortfahren, wo er aufgehört hat.
- WebSocket mit Fallback auf Server-Sent Events und ein typisierter TypeScript-Client.
- Backbones für Redis Streams, Valkey und NATS JetStream verteilen Events über Prozesse hinweg.
Beteiligte Pakete
Hintergrundjobs und Workflows
Arbeit, die nicht innerhalb einer Anfrage laufen sollte: Zustellungen, Importe, Berichte und lang laufende Geschäftsprozesse.
- Queue-Treiber für Redis Streams, PostgreSQL und SQS mit At-least-once-Zustellung.
- Wiederholungen mit Backoff, eindeutige Jobs, Idempotenzschlüssel und ein Dead-Letter-Speicher.
- Dauerhafte Workflows mit Event-Log, Kompensation, Timern und Freigabe durch Menschen.
- Zeitpläne werden zur Build-Zeit kompiliert, mit Zeitzonen und knotenübergreifenden Locks.
Beteiligte Pakete
Interne Werkzeuge und Backoffice
Verwaltungsanwendungen, bei denen Formulare, Berechtigungen und ein Audit-Trail wichtiger sind als ein schwergewichtiges Frontend.
- Servergerenderte Weft-Templates mit Komponenten, Slots und standardmäßigem Escaping.
- Attributbasierte Validierungsregeln mit übersetzten Meldungen.
- Policies mit Vier-Augen-Freigabe und einem Audit-Trail jeder Entscheidung.
- Uploads mit Inhaltsprüfung und Virenscan sowie aus Templates erzeugte PDF-Dokumente.
Beteiligte Pakete
Ereignisgesteuerte Integrationen
Systeme, die auf Änderungen reagieren und zuverlässig Daten mit anderen Diensten austauschen.
- Typisierte Events mit zur Build-Zeit kompilierten Listenern und asynchroner Zustellung.
- Eine transaktionale Outbox: Ein Event wird in derselben Transaktion festgehalten wie die Änderung, die es ausgelöst hat.
- MongoDB Change Streams, als Events zugestellt.
- Ausgehendes HTTP mit Redirect-Kontrolle, Wiederholungen und SSRF-Schutz.
Beteiligte Pakete
Regulierte und sicherheitskritische Umgebungen
Teams, die nachweisen müssen, wie sich Authentifizierung, Kryptografie und Logging verhalten, statt es nur zu behaupten.
- Das Authentifizierungspaket ordnet Anforderungen aus OWASP ASVS 4.0.3 Level 3 den Tests zu, die sie verifizieren. Das ist eine Selbsteinschätzung, keine Zertifizierung.
- libsodium ist der einzige Kryptografie-Anbieter, mit Schlüsselringen und Schlüsselrotation.
- Feldverschlüsselung mit Blind-Indizes und ein Audit-Trail in der Datenschicht.
- Secrets werden in Logs und Telemetrie geschwärzt und bleiben außerhalb der kompilierten Konfiguration.
Beteiligte Pakete
Begleiten Sie den Weg zu 1.0
Entdecken Sie, was heute vorhanden ist, oder schreiben Sie uns, wenn Sie über das Projekt sprechen möchten.