a launching rocket

Inertia.js-inspirierte Entwicklung für Drupal: Lupus Decoupled zeigt neue Wege

10.02.2025,

Entwickler stehen beim Aufbau von Webanwendungen typischerweise vor der Wahl zwischen einer entkoppelten Architektur mit modernen Frontend-Frameworks oder einem traditionellen monolithischen Ansatz mit Template-Engines wie Twig oder Blade. Inertia.js revolutionierte die Laravel-Entwicklung, indem es Entwicklern ermöglichte, ihren serverseitigen Workflow beizubehalten und gleichzeitig moderne Frontend-Frameworks wie Vue und React zu nutzen - ohne ihren Entwicklungsansatz grundlegend ändern zu müssen.

Inertia.js hat sich im Laravel-Ökosystem als außerordentlich erfolgreich erwiesen. Dies zeigt, dass Entwickler die Flexibilität schätzen, schrittweise moderne Frontend-Praktiken einführen zu können, während sie weiterhin von ihrer bestehenden serverseitigen Expertise profitieren. Mit Freude präsentieren wir heute diese bewährte Methodik auch für das Drupal-Ökosystem.

Vorstellung von Lupus Decoupled Drupal 1.0

Ähnlich wie Inertia.js ermöglicht Lupus Decoupled Drupal den Aufbau moderner Webanwendungen, ohne dass dabei auf die Vorteile des serverseitigen Renderings verzichtet werden muss. Die volle Kontrolle über Routing und Datenfluss verbleibt auf dem Server, während dynamische, interaktive Erlebnisse durch JavaScript-Komponenten erstellt werden. Im Kern wird demselben einfachen, aber leistungsfähigen Modell gefolgt - Seiten + Komponenten. Die Seiten und Daten werden von Drupal definiert - entweder durch Code oder Konfiguration - während die Darstellung und Interaktivität durch JavaScript-Komponenten gesteuert wird. Dadurch werden die Vorteile beider Welten vereint: serverseitige Kontrolle mit reichhaltigen Client-seitigen Interaktionen.

Mit der Veröffentlichung von Lupus Decoupled 1.0 gilt es offiziell als vollständig und produktionsreif. Jedoch sind die Bausteine von Lupus Decoupled bereits seit längerer Zeit stabil. Es wird beispielsweise bereits auf dieser Webseite eingesetzt, wie anhand der API-Ausgabe dieses Beitrags erkennbar ist.

Mit Version 1.0 bietet Lupus Decoupled Drupal:

  • Eine stabile, produktionsreife API für den Aufbau entkoppelter Drupal-Anwendungen
  • Vollständige redaktionelle Kontrolle über Seiten, Pfade und Metatags
  • Low-Code-Ansatz - Anpassung der API-Ausgabe über Drupals Konfigurationssystem
  • Umfassende Dokumentation mit Anleitungen und Beispielen
  • Entwicklungswerkzeuge für schnelle Iteration und Debugging
  • Produktionsreife Leistungsoptimierungen

Die Stärken von Drupal bewahren

Über diese Kernfunktionen hinaus behält Lupus Decoupled Drupal eine tiefe Integration mit Drupal bei. Dabei wird sichergestellt, dass die leistungsfähigen Werkzeuge von Drupal nahtlos mit dem modernen Frontend zusammenarbeiten:

  • Native Drupal-Authentifizierung im Frontend - Zugriffssteuerung, Bearbeiten-Schaltflächen, redaktionelle Vorschauen und Drupal-Nachrichten funktionieren unmittelbar
  • Metatags, URL-Aliase und Drupal-Weiterleitungen sind direkt nutzbar
  • Unterstützung für Drupal-Formulare im modernen Frontend, einschließlich der "Webforms" Erweiterung
  • Views- und Layout Builder-Unterstützung

Multi-Frontend-Ansatz

Ähnlich wie bei Inertia.js erfolgt das Rendering durch das Backend (Drupal) in einen Baum von High-Level-Komponenten (Custom Elements), wodurch die Ausgabe von jedem Frontend-Framework einfach erstellt werden kann. Standardmäßig wird ein Nuxt-basiertes Frontend bereitgestellt, das dank seines webstandard-orientierten Ansatzes einen einfachen Einstieg ermöglicht. Nuxt ist ein vielseitiges und anfängerfreundliches Framework, das verschiedene Rendering-Modi unterstützt. Zusätzlich wird eine Proof-of-Concept React-Implementierung mit Next.js für React-Entwickler angeboten. Weitere Frontend-Frameworks wie Astro können ebenfalls problemlos integriert werden. Bei Interesse an einer Mitarbeit freuen wir uns über eine Kontaktaufnahme!

Wie geht es weiter?

Aktuell wird an einer verbesserten Unterstützung für das Drupal CMS gearbeitet, wobei sogenannte Rezepte als Teil des Installationsprozesses genutzt werden, um die Auswahl gewünschter Funktionen zu vereinfachen. Als nächster Schritt ist die Integration mit dem kommenden Experience Builder geplant, wodurch serverseitig gerenderte moderne Erlebnisse ermöglicht werden. Sobald Drupal CMS und der Experience Builder das einfache Konfigurieren von Drupal Seiten ermöglichen, wird Lupus Decoupled Drupal bereit sein, diese Funktionalität mit einer modernen Frontend-Entwicklungsumgebung zu verbinden.

Jetzt ist der ideale Zeitpunkt für den Einstieg: Testen Sie eine der Gitpod-gehosteten webbasierten Entwicklungsumgebungen und machen Sie die ersten Schritte. Besuchen Sie uns im Drupal Slack unter #lupus-decoupled, um Feedback zu teilen oder Unterstützung zu erhalten!

More articles

Alte Münze - "There are far better things ahead than any we leave behind"

Was mir das DrupalCamp Berlin über “Volunteering” beigebracht hat

Community14. November 2024
Vom Zögern zur Begeisterung: Als ich mich entschloss, beim DrupalCamp Berlin als Volunteer zu helfen, wusste ich nicht, was mich erwartet. Im Nachhinein war es eine unvergessliche Erfahrung, die mich tief in die Community eintauchen ließ. In meinem Bericht teile ich Einblicke hinter die Kulissen und was es wirklich bedeutet, ein Event wie dieses mitzugestalten.
Green UX

Green UX

Corporate Social Responsibility (CSR)15. Juli 2024
Erfahren Sie mehr über den Einfluss von GreenUX: Digitale Erlebnisse werden durch den Fokus auf ökologische Nachhaltigkeit neu definiert. Lesen Sie, wie bewusste Designentscheidungen nicht nur zu verbesserter Performance und Barrierefreiheit beitragen, sondern auch die durch digitale Anwendungen verursachten Umweltbelastungen reduzieren können. Der Beitrag zeigt Möglichkeiten auf, zu einer nachhaltigeren und benutzerfreundlicheren Online-Zukunft beizutragen.