From Backend to App: Contentful & Strapi im Mobile-Stack


Mobile Entwicklung beinhaltet heutzutage weit mehr als native Apps auf Android und iOS. Die Systemlandschaft ist sehr vielfältig geworden – moderne Tech-Stacks denken Plattformen, Backend und Content gemeinsam. Dieser Artikel geht speziell darauf ein, wie Headless CMS-Lösungen wie Contentful oder Strapi genau diese Anforderungen für Apps umsetzen können, und vergleicht die beiden großen CMS-Plattformen.


Technischer Überblick

Was genau machen Headless CMS Systeme?

Ein Headless CMS ist ein modernes Content-Management-System, welches das Backend vom Frontend entkoppelt. Das ermöglicht die Ausspielung von Inhalten auf jeder beliebigen Plattform, ohne an eine bestimmte Benutzeroberfläche gebunden zu sein: Egal ob Websites, Apps, Desktop, IoT oder andere Geräte.

Contentful und Strapi sind dabei zwei Plattformen, die wir gerne im mobilen Umfeld nutzen und unterschiedliche Vorteile - je nach Anforderung - bieten.

Contentful war eine der ersten Headless CMS-Plattformen und hat mehr Enterprise-Fokus. Strapi hingegen ist jünger und eine Open Source Alternative. Beide erlauben das Erfassen von Inhalten in einer Web-UI durch Content-Editoren inkl. Rich Text und Medieninhalten, welche dann per API an das Frontend ausgeliefert werden. Beide erlauben das einfach Erfassen von Content in der Web UI:



App-Integration mit Kotlin Multiplatform

Bei Neofonie Mobile haben wir eine Library in Kotlin Multiplatform gebaut, die Contentful und Strapi für Android, iOS und sogar am Desktop nutzen lässt. Diese lässt sich bei Bedarf in alle möglichen Apps integrieren - von der Tourismusgebiets- bis zur Sportvereins-App.

Die Library nutzt einen modernen Tech Stack mit Jetpack Compose Multiplatform, ViewModel, kotlinx.datetime, Kotlin coroutines & Flow, den Ktor-Webclient, Dependency Injection via Koin und Navigation 3.

Contentful und Strapi sind dabei per REST API in einem geteilten Multiplatform-Modul angebunden, und unterstützen ein weites Spektrum an Features. Die Features umfassen dabei:

  • Localization damit CMS-Content in der App in mehreren Sprachen unterstützt wird

  • Pagination für die Synchronisation großer Datenmengen

  • Unterstützung der meisten Datentypen von Contentful & Strapi wie Text, Date & Time, Location, Media, Referenztypen und Listen

  • Automatischer Download und Caching von Media-Dateien

  • Download von Content sowie auch den Upload von Content via POST-Requests

Zudem wurde ein gemeinsames Interface und Mapping zwischen Contentful und Strapi-Content geschaffen, welches ein einfaches Wechseln der CMS-Plattformen via Toggle erlaubt.

Die Anzeige erfolgt in einer ebenso geteilten UI mit Jetpack Compose Multiplatform auf Android, iOS und Desktop. Dabei wird das oben erwähnte gemeinsame CMS-Interface verwendet und in UI State gemappt. Mit der großen Anzahl an verschiedenen Geräten wie Phones, Tablets, TVs oder PCs ist es auch wichtig ein responsives UI zu haben. Dies wurde mittels Jetpack Compose Flow-Layout gelöst, welches automatisch auf unterschiedliche Screen-Größen skaliert.


     

Außerdem gibt es in der Desktop-Version auch noch eine eigens gebaute einfache Backendverwaltung. Hier können die Daten nicht nur angezeigt sondern auch bearbeitet werden. Dabei werden Daten auch zurück ins CMS geschrieben. Dies erlaubt z.B. die gezielte Content-Pflege basierend auf Business Logic, die in der reinen Web UI von Contentful und Strapi in der Form nicht möglich ist.


Vergleich Contentful vs. Strapi

Features

Vom Feature-Set her sind beide Plattformen sehr gut vergleichbar. Beide bieten Internationalisierung/Übersetzungen, Live Previews, diverse AI Tools zur Content-Generierung, oder Content History. Beide erlauben auch in unterschiedlicher Art und Weise mehrere Brands (Contentful via spaces & environments und Strapi via projects & environments).

Hosting

Wenn es zur Infrastruktur oder Hosting kommt, gibt es größere Unterschiede. 

Contentful bietet eine vollständig gehostete SaaS-Plattform, schnelle CDNs und automatische Backups. Das heißt, es ist kein eigener Infrastruktur-Aufwand nötig.

Strapi hingegen ist entweder selbst gehostet oder als Strapi Cloud-Version verfügbar. Backups & Infrastruktur liegen je nach Setup in Eigenverantwortung. Das bedeutet mehr Kontrolle, aber dafür etwas mehr Devops-Aufwand.

APIs

Contentful sowie Strapi bieten jeweils REST & GraphQL APIs für Clients. Bei Contentful sind das die Content Management API (POST Content) und die Content Delivery API (GET Content). Bei Strapi lassen sich die APIs einfacher anpassen und erweitern.

Customization

Contentful bietet eine flexible Definition von Content Models, erlaubt aber keine angepasste Backend-Logik. Der Fokus liegt auf Content, nicht auf Business-Logik. Integrationen sind über den Contentful Marketplace verfügbar. 

Strapi bietet auch flexible Content Models, aber zusätzlich auch anpassbare API-Endpoints, volle Backend-Kontrolle (vor allem in der self-hosted Variante) und ist leichter erweiterbar mit eigener Logik (Custom Controller, Services, Policies, etc.). Plugins & Integrationen sind über den Strapi Market verfügbar.

Governance & Privacy

Gerade im Enterprise- oder B2B-Umfeld spielt das Thema Datenschutz und Compliance eine große Rolle – insbesondere, wenn Apps in der EU ausgerollt werden.

Contentful punktet hier vor allem mit klaren Optionen für EU Data Residency: Kundendaten können in europäischen Rechenzentren gehalten werden und das Produkt ist von Haus aus auf DSGVO-konforme Nutzung ausgelegt und richtet sich stark an Unternehmen, die klare Audits, Dokumentation und Compliance-Prozesse benötigen.

Strapi ist in diesem Bereich ebenfalls gut aufgestellt, erfordert aber etwas mehr Eigenverantwortung (vor allem in der self-hosted-Variante). Strapi Cloud ermöglicht auch das Hosting in verschiedenen Regionen wie in den USA, Europa oder Asien, und lässt sich ebenfalls DSGVO-konform konfigurieren. 

Sicherheit

Contentful bietet feingranulares Role-based Access Control (RBAC), Security & Patches werden vollständig gemanagt. Außerdem gibt es Monitoring & Audit-Funktionen und Contentful hat eine ISO 27001-Zertifizierung.

Auch bei Strapi ist RBAC verfügbar, aber die Sicherheit hängt stärker vom Hosting-Setup ab. Monitoring & Audit-Funktionen sind auch vorhanden, und etwas flexibler als bei Contentful

Skalierung

Contentful bietet eine voll gemanagte Infrastruktur und skaliert automatisch bei Bedarf. Globale CDNs sorgen für eine schnelle Auslieferung.

In der Self-hosted Strapi-Variante ist die Skalierung Eigenverantwortung (Kubernetes, Load Balancing, etc.). Strapi Cloud skaliert mit, aber ohne klassisches Autoscaling wie bei Contentful.

Pricing

Laut aktuellem Stand kostet Contentful im „Lite“-Plan 300$ pro Monat. Es gibt eine klare Enterprise-Ausrichtung, ist aber weniger attraktiv bei kleinem Budget.

Strapi ist in der self-hosted / Open Source-Variante kostenlos (abgesehen von Infrastrukturkosten). Strapi Cloud ist ab 75$ pro Monat in der Pro-Version zu haben und interessant für Projekte mit begrenztem Budget.

Time to Market

Contentful bietet ein sehr schnelles Setup - die Content-Modelle sind rasch einsatzbereit.

Strapi bietet mehr Flexibilität im Ökosystem und hat etwas mehr Setup-Aufwand (insbesondere self-hosted), was sich lohnt, wenn zusätzliche Kontrolle wichtig ist.

Zusammenfassung

In Zusammenfassung ist Strapi eine gute Wahl mit einem engeren Budget, höheren Customization-Bedürfnissen oder bei self-hosted Infrastructure. Contentful ist eine gute Wahl bei hohen Security & Compliance Bedürfnissen und wenn Skalierung sehr wichtig ist.



From Backend to App: Contentful & Strapi im Mobile-Stack


Mobile Entwicklung beinhaltet heutzutage weit mehr als native Apps auf Android und iOS. Die Systemlandschaft ist sehr vielfältig geworden – moderne Tech-Stacks denken Plattformen, Backend und Content gemeinsam. Dieser Artikel geht speziell darauf ein, wie Headless CMS-Lösungen wie Contentful oder Strapi genau diese Anforderungen für Apps umsetzen können, und vergleicht die beiden großen CMS-Plattformen.


Technischer Überblick

Was genau machen Headless CMS Systeme?

Ein Headless CMS ist ein modernes Content-Management-System, welches das Backend vom Frontend entkoppelt. Das ermöglicht die Ausspielung von Inhalten auf jeder beliebigen Plattform, ohne an eine bestimmte Benutzeroberfläche gebunden zu sein: Egal ob Websites, Apps, Desktop, IoT oder andere Geräte.

Contentful und Strapi sind dabei zwei Plattformen, die wir gerne im mobilen Umfeld nutzen und unterschiedliche Vorteile - je nach Anforderung - bieten.

Contentful war eine der ersten Headless CMS-Plattformen und hat mehr Enterprise-Fokus. Strapi hingegen ist jünger und eine Open Source Alternative. Beide erlauben das Erfassen von Inhalten in einer Web-UI durch Content-Editoren inkl. Rich Text und Medieninhalten, welche dann per API an das Frontend ausgeliefert werden. Beide erlauben das einfach Erfassen von Content in der Web UI:



App-Integration mit Kotlin Multiplatform

Bei Neofonie Mobile haben wir eine Library in Kotlin Multiplatform gebaut, die Contentful und Strapi für Android, iOS und sogar am Desktop nutzen lässt. Diese lässt sich bei Bedarf in alle möglichen Apps integrieren - von der Tourismusgebiets- bis zur Sportvereins-App.

Die Library nutzt einen modernen Tech Stack mit Jetpack Compose Multiplatform, ViewModel, kotlinx.datetime, Kotlin coroutines & Flow, den Ktor-Webclient, Dependency Injection via Koin und Navigation 3.

Contentful und Strapi sind dabei per REST API in einem geteilten Multiplatform-Modul angebunden, und unterstützen ein weites Spektrum an Features. Die Features umfassen dabei:

  • Localization damit CMS-Content in der App in mehreren Sprachen unterstützt wird

  • Pagination für die Synchronisation großer Datenmengen

  • Unterstützung der meisten Datentypen von Contentful & Strapi wie Text, Date & Time, Location, Media, Referenztypen und Listen

  • Automatischer Download und Caching von Media-Dateien

  • Download von Content sowie auch den Upload von Content via POST-Requests

Zudem wurde ein gemeinsames Interface und Mapping zwischen Contentful und Strapi-Content geschaffen, welches ein einfaches Wechseln der CMS-Plattformen via Toggle erlaubt.

Die Anzeige erfolgt in einer ebenso geteilten UI mit Jetpack Compose Multiplatform auf Android, iOS und Desktop. Dabei wird das oben erwähnte gemeinsame CMS-Interface verwendet und in UI State gemappt. Mit der großen Anzahl an verschiedenen Geräten wie Phones, Tablets, TVs oder PCs ist es auch wichtig ein responsives UI zu haben. Dies wurde mittels Jetpack Compose Flow-Layout gelöst, welches automatisch auf unterschiedliche Screen-Größen skaliert.


     

Außerdem gibt es in der Desktop-Version auch noch eine eigens gebaute einfache Backendverwaltung. Hier können die Daten nicht nur angezeigt sondern auch bearbeitet werden. Dabei werden Daten auch zurück ins CMS geschrieben. Dies erlaubt z.B. die gezielte Content-Pflege basierend auf Business Logic, die in der reinen Web UI von Contentful und Strapi in der Form nicht möglich ist.


Vergleich Contentful vs. Strapi

Features

Vom Feature-Set her sind beide Plattformen sehr gut vergleichbar. Beide bieten Internationalisierung/Übersetzungen, Live Previews, diverse AI Tools zur Content-Generierung, oder Content History. Beide erlauben auch in unterschiedlicher Art und Weise mehrere Brands (Contentful via spaces & environments und Strapi via projects & environments).

Hosting

Wenn es zur Infrastruktur oder Hosting kommt, gibt es größere Unterschiede. 

Contentful bietet eine vollständig gehostete SaaS-Plattform, schnelle CDNs und automatische Backups. Das heißt, es ist kein eigener Infrastruktur-Aufwand nötig.

Strapi hingegen ist entweder selbst gehostet oder als Strapi Cloud-Version verfügbar. Backups & Infrastruktur liegen je nach Setup in Eigenverantwortung. Das bedeutet mehr Kontrolle, aber dafür etwas mehr Devops-Aufwand.

APIs

Contentful sowie Strapi bieten jeweils REST & GraphQL APIs für Clients. Bei Contentful sind das die Content Management API (POST Content) und die Content Delivery API (GET Content). Bei Strapi lassen sich die APIs einfacher anpassen und erweitern.

Customization

Contentful bietet eine flexible Definition von Content Models, erlaubt aber keine angepasste Backend-Logik. Der Fokus liegt auf Content, nicht auf Business-Logik. Integrationen sind über den Contentful Marketplace verfügbar. 

Strapi bietet auch flexible Content Models, aber zusätzlich auch anpassbare API-Endpoints, volle Backend-Kontrolle (vor allem in der self-hosted Variante) und ist leichter erweiterbar mit eigener Logik (Custom Controller, Services, Policies, etc.). Plugins & Integrationen sind über den Strapi Market verfügbar.

Governance & Privacy

Gerade im Enterprise- oder B2B-Umfeld spielt das Thema Datenschutz und Compliance eine große Rolle – insbesondere, wenn Apps in der EU ausgerollt werden.

Contentful punktet hier vor allem mit klaren Optionen für EU Data Residency: Kundendaten können in europäischen Rechenzentren gehalten werden und das Produkt ist von Haus aus auf DSGVO-konforme Nutzung ausgelegt und richtet sich stark an Unternehmen, die klare Audits, Dokumentation und Compliance-Prozesse benötigen.

Strapi ist in diesem Bereich ebenfalls gut aufgestellt, erfordert aber etwas mehr Eigenverantwortung (vor allem in der self-hosted-Variante). Strapi Cloud ermöglicht auch das Hosting in verschiedenen Regionen wie in den USA, Europa oder Asien, und lässt sich ebenfalls DSGVO-konform konfigurieren. 

Sicherheit

Contentful bietet feingranulares Role-based Access Control (RBAC), Security & Patches werden vollständig gemanagt. Außerdem gibt es Monitoring & Audit-Funktionen und Contentful hat eine ISO 27001-Zertifizierung.

Auch bei Strapi ist RBAC verfügbar, aber die Sicherheit hängt stärker vom Hosting-Setup ab. Monitoring & Audit-Funktionen sind auch vorhanden, und etwas flexibler als bei Contentful

Skalierung

Contentful bietet eine voll gemanagte Infrastruktur und skaliert automatisch bei Bedarf. Globale CDNs sorgen für eine schnelle Auslieferung.

In der Self-hosted Strapi-Variante ist die Skalierung Eigenverantwortung (Kubernetes, Load Balancing, etc.). Strapi Cloud skaliert mit, aber ohne klassisches Autoscaling wie bei Contentful.

Pricing

Laut aktuellem Stand kostet Contentful im „Lite“-Plan 300$ pro Monat. Es gibt eine klare Enterprise-Ausrichtung, ist aber weniger attraktiv bei kleinem Budget.

Strapi ist in der self-hosted / Open Source-Variante kostenlos (abgesehen von Infrastrukturkosten). Strapi Cloud ist ab 75$ pro Monat in der Pro-Version zu haben und interessant für Projekte mit begrenztem Budget.

Time to Market

Contentful bietet ein sehr schnelles Setup - die Content-Modelle sind rasch einsatzbereit.

Strapi bietet mehr Flexibilität im Ökosystem und hat etwas mehr Setup-Aufwand (insbesondere self-hosted), was sich lohnt, wenn zusätzliche Kontrolle wichtig ist.

Zusammenfassung

In Zusammenfassung ist Strapi eine gute Wahl mit einem engeren Budget, höheren Customization-Bedürfnissen oder bei self-hosted Infrastructure. Contentful ist eine gute Wahl bei hohen Security & Compliance Bedürfnissen und wenn Skalierung sehr wichtig ist.