Open Source von Facebook: Webseiten-Generator Docusaurus 2.0 vorgestellt

Facebook-Mutterkonzern Meta stellt Docusaurus 2.0 vor: Ein Generator für statische Webseiten, der dabei hilft, Dokumentations-Webseiten zu erstellen.

In Pocket speichern vorlesen Druckansicht 2 Kommentare lesen

(Bild: Montri Thipsorn/Shutterstock.com)

Lesezeit: 3 Min.
Von
  • Frank-Michael Schlede

Aus Facebook Open Source ist mit der Umbenennung des Mutterkonzern auch Meta Open Source geworden. Das Unternehmen ist mit diesem Bereich nach wie vor stark in der Entwicklung von Open-Source-Software engagiert. Dabei hebt die Firma immer wieder ihre Projekte in den Bereichen Diversität und Inklusion hervor, stellt regelmäßig aber auch andere Open-Source-Software bereit.

Zu diesen Projekten gehört Docusaurus, ein Infrastrukturprojekt, bei dem es sich um einen Generator für statische Websites handelt, mit dessen Hilfe Entwickler und Entwicklerinnen sehr einfach Dokumentations-Websites erstellen können.

Docusaurus entstand bereits im Jahr 2017 bei Facebook. Die Entwicklerteams des Unternehmens standen – wie viele Entwicklerinnen und Entwickler – vor dem Problem, dass sie fortwährend eine große Anzahl interner und Open-Source-Projekte dokumentieren mussten. Ist es für die Entwicklerteams schon anstrengend genug, eine gute Dokumentation zu ihrer Software zu schreiben, so haben sie zumeist weder Zeit noch Lust, sich dann auch noch mit der Erstellung entsprechender Webseiten in HTML, CSS und JavaScript zu befassen.

So war es dann das erklärte Ziel, ihnen eine Möglichkeit anzubieten, sich allein auf den Inhalt der Dokumentation zu konzentrieren. Eine erste Lösung bestand zunächst darin, eine Jekyll-Vorlage immer und immer wieder zu kopieren und einzufügen. Das wurde schwer zu pflegen, also haben die Meta-Entwickler mit Docusaurus ein neues Tool geschrieben, um diese Probleme besser zu lösen.

Bereits die Version 1.0 der Software war nach Aussagen der Meta-Entwickler recht erfolgreich. Doch gab es bei dieser ersten Version einige Architekturentscheidungen, die von den Entwicklerinnen und Entwicklern nun hinterfragt wurden. So wurde React nur als serverseitige Templating-Sprache verwendet und nicht auf dem Client eingesetzt. Das Mingsystem war ziemlich begrenzt, und abgesehen vom Ändern einiger Farben mit CSS war es schwierig, weitergehende Anpassungen vorzunehmen. Das System zur Versionierung der Dokumente war verwirrend, da es auf einem Diff-Algorithmus basierte. Und schließlich war die Codebasis monolithisch – sie war weder gut getestet noch einfach zu erweitern.

Das Entwicklerteam bei Meta hat die Software von Grund auf mit einer modularen Architektur neu aufgebaut. Dazu waren nach ihren Aussagen vier Jahre Arbeit sowie 75 Alpha- und 22 Beta-Version notwendig. Nun wird React auch auf dem Client verwendet, was eine moderne Single-Page-Application-Navigation ermöglicht. Die Software unterstützt in der Version 2.0 auch Plug-ins, die es der Community ermöglichen sollen, nützliche Funktionen als Pakete von Drittanbietern beizusteuern.

Das Theming, das von den Entwicklern und Entwicklerinnen bei Meta als eines der wichtigsten Features von Docusaurus bezeichnet wird, ist flexibler als zuvor. Weiterhin basiert die Versionierung der Dokumente jetzt auf Snapshot-Kopien, was für Nutzer und Nutzerinnen einfacher zu verstehen sein sollte. Weitere Einzelheiten und alle Details sind in der Projektankündigung für Docusaurus 2 und im Leitfaden für die Migration von Version 1 auf die neue Version 2 zu finden.

(fms)