Inhaltstypen
Pages
Posts

play-cms

das Java-basierte CMS für komplexe Webprojekte

Was ist das play-cms?

Mit wachsender Komplexität eines Webprojektes steigen auch die Anforderungen an Stabilität und Wartbarkeit, sowohl in der Entwicklung als auch im späteren Betrieb. Dafür ist ein flexibles Framework notwendig, welches den Entwicklern die nötige Freiheit und Effizienz bietet.

Das von insign entwickelte open-source CMS baut auf dem Play High Velocity Web Framework auf und ergänzt dieses um Content Management, Benutzer- und Rechteverwaltung und weitere Funktionen. Der Fokus liegt dabei auf der einfachen und effizienten Realisierung von individuellen Webprojekten.

Java für komplexe Projekte

Java-basierte Lösungen bieten in komplexen Projekten klare Vorteile gegenüber dynamischen Programmiersprachen wie PHP. Die starke Typisierung verhindert viele Fehler schon in der Entwicklungsphase, Code-Wartung und spätere Anpassung sind weniger risikobehaftet, der gesamte Toolstack sowie die verfügbare Libraries sind von hoher Qualität und Stabilität.

Stabilität und Wartbarkeit

Bei vielen anderen CMS-Lösungen werden die Projektkomponenten als Plugins oder Add-ons “ums CMS herum” entwickelt. Die Architektur der Lösung wird durch die gebotenen Erweiterungspunkte eingeschränkt. Bei Updates des CMS kommt es leicht zu Fehlern in diesen Plugins, welche oft erst zur Laufzeit festgestellt werden.

Beim play-cms steht dagegen die Gesamtlösung im Zentrum, projektspezifische Entwicklungen integrieren die benötigten CMS-Komponenten, und die strenge Typisierung verhindert, dass eine Lösung mit nicht zusammenpassenden Teilen überhaupt kompiliert werden kann.

Projekt-Vorlage

Zum play-cms gehört ein Beispiel-Projekt, welches als Schnellstart-Vorlage für neue Projekte dient. Alle Ingredienzien moderner Webprojekte sind bereits integriert – inklusive einem vollständigen Continuous Integration Setup, DevOps Funktionen und Container-Deployment mit Docker. Die Entwicklung kann sofort beginnen, die üblichen und aufwändigen Projekt-Bootstrapping-Arbeiten entfallen.

Drei Referenzen bei denen play-cms im Einsatz ist

Visual Portfolio, Posts & Image Gallery for WordPress

Features

Benutzerverwaltung

Die flexible Benutzerverwaltung umfasst ein komfortables Backend zur Verwaltung der Benutzer, Zuweisung von Rollen etc. Sowohl die Benutzer-Eigenschaften sowie deren Verwaltung im Backend können beliebig individualisiert werden.

Screenshot aus dem play-cms mit der Benutzerverwaltung über das Backend - insign gmbh
Benutzerverwaltung in play-cms

Die Authentifizierung ist vollständig den Unternehmensanforderungen anpassbar. Lokal, via Active-Directory / LDAP, oder über einen externen Single-Sign-on / Identity-Provider.

Zugriffssteuerung

Das play-cms bringt eine sehr starke Zugriffssteuerung mit, welche für alle Ressourcen im Projekt (CMS-Inhalte, Applikations-Funktionen, aber auch alle projektspezifischen Objekte) eingesetzt werden kann. Die Rechtevergabe erfolgt rollenbasiert und mit ACLs. Die Lösung basiert auf dem bekannten Sicherheits-Framework Apache Shiro.

Screenshot aus dem play-cms mit der Zuweisung von Rollen über das Backend - insign gmbh
Zuweisung von Rollen in play-cms

Content Management

Das CMS bietet alle gängigen Funktionen moderner CMS-Lösungen, ohne dabei überladen zu wirken. Inhalte können bis auf Block-Ebene mit Lese-/Schreib-Rechten versehen werden. Zeitgesteuerte Ein-/Ausblendung erfolgt ebenfalls bis auf Blockebene. Die Seiten-Hierarchie sowie auch die Inhaltsblocks jeder Seite können mit drag-and-drop umstrukturiert werden.

Inhalte können mit drag-and-drop verschoben werden.

Zur Medienverwaltung kommt standardmässig MoxieManager zum Einsatz, alternativ können problemlos vorhandene Mediendatenbanken angebunden werden. Daten aus Applikationen können auf viele Arten ins CMS eingebunden werden: Als eigenständige Seiten, als beliebig durch den Admin platzierbare Inhaltsblöcke, oder auch direkt im Fliesstext mit Widgets.

Suche

Das play-cms bietet starke Suchfunktionen, welche über Content- sowie Applikationsinhalte suchen können. Such-Provider können beliebig ergänzt oder ersetzt werden. Der integrierte Such-Provider verwendet einen Elastic Search-Server.

Formulare verwalten

Als optionale Formular-Lösung integriert das play-cms den Formulardienst. Formulare können sehr komfortabel auf der Jotform-Plattform erstellt werden. Die fertigen Formulare können dann direkt im CMS als Inhaltsblock frei platziert werden. Eingegangene Formular-Submissionen werden ebenfalls direkt im play-cms Backend verwaltet.

Integrierte Task-Engine

Zur Abarbeitung asynchroner Aufgaben (z.B. Schnittstellen) steht dem Entwickler eine integrierte Task-Engine mit vielfältigen Steuerungs- und Eskalations-Mechanismen zur Verfügung. Die zugehörige Benutzeroberfläche ermöglicht den Administratoren jederzeit den vollständigen Einblick und Eingriff in das Geschehen.

DevOps und Continuous Integration

Das play-cms wurde für effiziente Softwareentwicklung ausgelegt. Das zugehörige play-cms-demo-Starter-Projekt bringt deshalb bereits ein vollständiges DevOps-Setup mit, welches Continuous Integration (Jenkins), automatisierte Tests, Container Management (Docker) und Orchestration der Serverumgebungen (Ansible) umfasst.

Performance

Das zugrunde liegende Play Framework mit seinem auf Akka basierenden asynchronen I/O Modell ist auf sehr hohe Performance und Skalierbarkeit ausgelegt. Das play-cms baut auf diesen Komponenten auf. Dank flexiblem und adaptivem Multi-Layer Caching wird eine sehr gute Performance out-of-the-box ohne zusätzliche Front Proxies oder CDNs erreicht. play-cms-Webprojekte können nach Bedarf beliebig skaliert werden.

Monitoring

Die verwendeten Java Logging-Mechanismen erlauben eine vielfältige und feingranulare Konfiguration. Log-Ereignisse können gezielt an ein externes Monitoring-System (standardmässige Anbindung für Graylog im Demoprojekt vorhanden) weitergeleitet werden.

Lass dich unverbindlich beraten!

Wir zeigen dir gerne was unser play-cms alles drauf hat.