kohlrAPI ist eine leichtgewichtige Symfony-Bibliothek, die das Erstellen von RESTful-APIs deutlich beschleunigt. Sie stellt abstrakte Basisklassen für Entities, Repositories und Controller bereit (ApiEntity, ApiRepository, ApiController), sodass sich der typische Boilerplate-Code für CRUD-Endpunkte auf ein Minimum reduziert.
Die Bibliothek bringt generische Such-, Filter-, Sortier- und Paginierungs-Logik mit, deren Ausgabeformat direkt mit den Datentabellen von PrimeVue und Vuetify kompatibel ist. Hinzu kommen UUID-basierte Entities sowie Bulk-Operationen, die mehrere Datensätze in einer einzigen Transaktion anlegen, aktualisieren oder löschen.
Ein Schwerpunkt liegt auf dem Authorization-first-Ansatz: Über einen austauschbaren AuthorizationContext und fail-closed can()-Prüfungen lässt sich auch ein Berechtigungssystem außerhalb von Symfony nahtlos anbinden. kohlrAPI setzt auf Symfony 7.4 / 8.0, Doctrine ORM 3.6+ und PHP 8.2+ und steht unter der MIT-Lizenz auf GitHub zur Verfügung.
kohlrAPI entstand ursprünglich im Rahmen der Arbeit am Projekt AdCaptain und wurde anschließend als eigenständige Open-Source-Bibliothek ausgekoppelt.