© Goryslav/Shutterstock.com
Eine Minimalimplementierung in JavaScript und Node.js

µCMS - ein minimalistisches CMS


Mit der Etablierung von Node.js als Webtechnologie hat sich die Gestaltung von Webanwendungen grundlegend vereinfacht. Node.js ermöglicht es, in JavaScript einen vollwertigen Server zu implementieren und insbesondere die im Browser-JavaScript nicht verfügbaren Dateisystemzugriffe umzusetzen. In diesem Artikel implementieren wir ein sehr einfaches Content-Management-System ausschließlich auf Grundlage der Möglichkeiten von JavaScript/Node.js und der für Node. js zur Verfügung stehenden Bibliotheken.

Ein Content-Management-System (CMS) [1] dient dazu, Webinhalte über ein Web-Frontend im Browser dynamisch zu ändern, d. h., es erlaubt entsprechend berechtigten Anwendern, Seiten bzw. Dateien hinzuzufügen, zu ändern und zu löschen. Damit erleichtern CMS die Wartung von Webinhalten enorm, da der Bearbeiter die meisten Schritte aus einem einzigen Werkzeug vornehmen kann und zur Änderung der Inhalte nicht in einen Editor für HTML-Dateien oder eine Programmierumgebung wechseln muss. Die Arbeitsweise gleicht eher dem Umgang mit einem Textverarbeitungsprogramm, bei dem Inhaltsänderungen direkt in der Applikation vorgenommen werden können. Dem Speichern in der Textverarbeitung entspricht bei Webinhalten dabei das Veröffentlichen der durchgeführten Änderungen. Ein weiterer Vorteil für die Administration entsprechender Systeme ist, dass dem Bearbeiter kein explizites Schreibrecht für das Dateisystem eingeräumt werden muss. Die Berechtigung zum Ändern von Inhalten wird vom CMS nicht auf Grundlage betriebssystemseitiger Schreibrechte, sondern auf Basis der Rolle des Anwenders vergeben. Ein Schreibrecht für das Dateisystem muss nur für den Anwender vergeben werden, unter dem der Prozess des CMS gestartet wird.

Es gibt viele existierende Implementierungen von CMS, z. B. TYPO3, Joomla! und unzählige andere mehr. Die Stärke dieser Implementierungen liegt darin, dass sie einen viel einfacheren Administrationszugang zu Webinhalten und -seiten bereitstellen, d. h. Seiten können nach dem WYSIWYG-Prinzip (What You See Is What You Get) bearbeitet werden. Darüber hinaus verfügen sie über ausgereifte Bibliotheken von Vorlagen/Templates und können damit und über Plug-in-Mechanismen an viele Anwendungssituationen angepasst werden. Der Einsatzbereich reicht von einfachen Vereinswebseiten bis zu kompletten Webshops.

Mit der Leistungsfähigkeit der genannten CMS geht eine gewisse Komplexität einher. Die meisten installierten CMS vereinen die folgenden Eigenschaften:

  • Der Zugriff auf die D...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang