von Jonas Müller
Strapi bietet eine Vielzahl von Out of the Box Funktionalitäten, die in nahezu jeder Webanwendung benötigt werden. Dadurch wird der Entwicklungsaufwand erheblich reduziert. Im Folgenden werden die wichtigsten Funktionen im Detail vorgestellt.
Userverwaltung, Authentisierung und Autorisierung: Strapi verfügt standardmässig über ein umfassendes Benutzerverwaltungsmodul. In diesem Modul sind Funktionen wie die Registrierung mit Passwortbestätigung und das Login bereits integriert. Zusätzlich bietet Strapi die Möglichkeit, Benutzer in Gruppen einzuteilen, denen verschiedene Berechtigungen zugewiesen werden können.
Plug and Play Datenbankanbindung: Für die Persistenz von Daten müssen diese in einer Datenbank oder einer vergleichbaren Struktur gespeichert werden. Sobald eine Strapi-Instanz mit einer Datenbank verbunden ist, übernimmt Strapi sämtliche Datenbankoperationen und stellt dem Entwickler eine Abstraktionsebene für die Datenpersistenz bereit.
API für definierte Taxonomien, konsumierbar über GraphQL oder RESTful-Schnittstellen: Strapi erstellt automatisch für jede im Admin-Panel definierte Kategorie oder Struktur eine API mit CRUD-Endpunkten (Create, Read, Update, Delete), die auf die Entitäten dieser Struktur angewendet werden können.
Möglichkeit zur Einrichtung von Webhooks: Ein Webhook ermöglicht die Kommunikation zwischen zwei Applikationen. Webhooks werden vorwiegend genutzt, um über Ereignisse zu informieren.
Automatische API-Dokumentation im OpenAPI-Standard: Strapi kommuniziert mit anderen Applikationen über eine API und generiert automatisch eine maschinenlesbare API-Dokumentation nach dem OpenAPI Spezifikation, die es Entwicklern ermöglicht, die Schnittstellen schnell zu verstehen und in andere Anwendungen zu integrieren. Dies spart wertvolle Entwicklungszeit.
Zusätzlich zu den Basisfunktionen stellt Strapi einen Marketplace zur Verfügung, der eine Vielzahl an Plugins bietet, um das System mit neuen Features und Integrationen zu erweitern. Ein Beispiel hierfür ist das Passwordless-Plugin, das ein Login über einen sogenannten Magic-Link ermöglicht, wodurch Benutzer sich ohne Passwort sicher anmelden können. Diese Erweiterungen erleichtern es Entwicklern, spezifische Anforderungen schnell umzusetzen und die Funktionalität der Anwendung individuell anzupassen.
Strapi und Skalierbarkeit: Flexible Infrastruktur und Datenverarbeitung
Strapi bietet volle Flexibilität in Bezug auf die eingesetzte Infrastruktur und schreibt keine spezifische Umgebung vor. Solange die Infrastruktur leistungsfähig genug ist, sind der Skalierbarkeit und der Verarbeitung von Daten in Strapi nahezu keine Grenzen gesetzt. Ein beeindruckendes Beispiel hierfür sind die von Nueva umgesetzten Feldschlösschen-Promotionen, bei denen Strapi über 190 Millionen Spielcodes verwaltet und als Datenbank für mehr als 90.000 User dient. Diese Skalierbarkeit macht Strapi zur idealen Wahl für datenintensive Anwendungen.
Strapi und Storyblok - unser Dreamteam
Obwohl sowohl Strapi als auch Storyblok als Headless-CMS bekannt sind, dienen sie unterschiedlichen Zwecken. Storyblok eignet sich ideal für die Verwaltung von Inhalten, die keine komplexe Geschäftslogik erfordern, während Strapi für die Verarbeitung und Verwaltung von geschäftsrelevanten Daten in Webanwendungen zuständig ist. Bei Nueva nutzen wir oft die Kombination aus beiden Systemen: Strapi für die Businesslogik und Storyblok für den Content. Nuxt im Frontend sorgt dabei für eine nahtlose Kommunikation mit beiden Plattformen über API-Schnittstellen.
Unser Fazit
Strapi und Storyblok ermöglichen es unseren Kunden, ihre Applikationen einfach zu verwalten. Bei Nueva legen wir grossen Wert darauf, unsere Kunden aktiv in den Entwicklungsprozess einzubinden, um durch enge Zusammenarbeit die bestmöglichen Ergebnisse zu erzielen. Dank des benutzerfreundlichen Admin Panels von Strapi können wir dieses Konzept auch im Betrieb der Applikation fortführen: Kunden haben die Kontrolle über ihre Daten und können bei Bedarf selbst Anpassungen vornehmen. Ein gutes Beispiel hierfür ist die Plattform salza.ch, bei der der Kunde auf Wunsch mehrere Arbeitsschritte eigenständig durchführt. Mit Strapi haben wir ein Framework, das eine solide Grundlage bietet, dabei aber flexibel genug bleibt, um individuelle Anforderungen unserer Kunden optimal zu erfüllen.