Pennybase: Minimalistischer Go BaaS in unter 1000 Zeilen

2025-07-04
Pennybase: Minimalistischer Go BaaS in unter 1000 Zeilen

Pennybase ist eine leichtgewichtige Backend-as-a-Service (BaaS)-Lösung, die in weniger als 1000 Zeilen Go-Code implementiert ist und eine vereinfachte Alternative zu Firebase, Supabase und Pocketbase bietet. Sie verwendet nur die Standardbibliothek von Go und benötigt keine externen Abhängigkeiten. Zu den Hauptfunktionen gehören die Dateispeicherung (versionierte CSV), eine REST-API (JSON-Antworten), die Authentifizierung über Sitzungscookies und Basic Auth, rollenbasierte Zugriffssteuerung (RBAC) und eigentümerbasierte Berechtigungen, Echtzeit-Updates über SSE, Schemavalidierung und Go-Templating. Daten werden in menschenlesbaren CSVs gespeichert, wobei Updates neue Versionsaufzeichnungen erstellen. Ein cleverer In-Memory-Index ermöglicht schnelle Suchen und Updates. Die Zugriffskontrolle verwendet ein einfaches RBAC-Modell, und benutzerdefinierte Funktionen sind über Hook-Funktionen möglich.