Reveal.JS Präsentationen als Gitlab/Github Pages

vorhergehende Artikel in: OpenSource Markup
25.11.2021

Ich hatte neulich die Idee, Präsentationen zu erstellen, die als Repository auf Gitlab und/oder Github gehostet werden können und dort auch live als HTML5 für jeden interessierten zu betrachten wären.

Diese Idee hatten vor mir schon andere - ich habe am Ende des Artikels einige Links zusammengestellt, die mir bei diesem Projekt geholfen haben.

Auf Github ist es ein wenig einfacher als auf Gitlab: Hier muss man einfach das Projekt Reveal.JS als Submodul einbinden und anschließend die Konfiguration für die Pages so ändern, dass sie auf den Branch master (oder einen anderen gewünschten) zeigt. Das ist auch schon alles. Ich habe dafür ein Template-Repository eingerichtet, das man einfach klonen kann. In diesem Template-Repo ist eine kleine Beispiel-Präsentation enthalten, die nochmal einige der Facetten zeigt, die mittels Reveal.JS in einer HTML5-Präsentation möglich sind.

Auf Github ist die Erreichung des Ziels ein wenig anders, aber trotzdem sehr einfach. Ich habe mich hier für die Möglichkeit eines zweistufigen Verfahrens entschieden - letztlich wird der Inhalt des Pages-Projekts über einen zweistufigen Prozess erstellt: Stufe eins ist ein Docker-Image, das die entsprechenden Dateien des Reveal.JS-Projekts beinhaltet. Dieses Image wird über eine von Gitlabs CI/CD-Pipelines erstellt. Stufe 2 ist ein Projekt, das dieses Image in einer CI/CD-Pipeline benutzt und die Daten des Anwenders, die die Inhalte der Präsentation ausmachen, zumischt. Auch hier gibt es wieder die Beispiel-Präsentation zur Demonstration der Möglichkeiten von Reveal.JS und als Ausgangspunkt für eigene Ideen.

In beiden Versionen ist bereits alles enthalten, um Quelltexte mit Syntax-Highlighting in Präsentationen ebenso wie mathematische Ausdrücke darstellen zu können. Die Projekte sind so gehalten, dass es ausreichen sollte, ein einfaches Markdown-Dokument zu bearbeiten, wie es auch zum Beispiel in HackMD möglich ist. Die Beispielpräsentation zeigt aber auch, was getan werden muss, wenn man HTML und Markdown mischen möchte - zum Beispiel um komplexere Layouts zu erstellen wie sie etwa mit w3css möglich sind.

Ich habe hier absichtlich weitere Plugins erst einmal nicht mit aufgenommen (aus meiner Sicht wäre die Unterstützung eingebetteter PlantUML-Diagramme der nächste passende Kandidat) und auch nur ein - das vom Template benutzte - Theme fürs Syntax-Highlighting integriert. Dafür ist das ganze ja OpenSource - wer möchte kann die Repositories forken und seinen eigenen Wünschen und Bedürfnissen anpassen...

Artikel, die hierher verlinken

Sicherheit beim Fernzugang per SSH

12.09.2022

Ich habe vor einiger Zeit bereits zwei Vorträge gestaltet und dafür meine Ideen zur unkomplizierten Erstellung von Präsentationen genutzt - nun ist ein weiterer hinzugekommen.

Präsentationen zu KI / ML und Vertrauen (PKI)

20.07.2022

Ich habe meine eigenen Ideen zur unkomplizierten Erstellung von Präsentationen genutzt, um zwei Vorträge zu gestalten.

Trojan Source - Nachschlag

15.03.2022

Ich habe weitere interessante Fakten zu der Trojan Source Attacke des letzten Jahres ausgegraben...

Mein Open Source Manifest

26.12.2021

Im Zuge des großen Log4J-Problems ist ja viel - auch viel dämliches - im Zusammenhang mit OpenSource-Projekten und ihrem Stellenwert verzapft worden

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Multi-User-WebDAV, Docker, GitHub

    17.11.2019

    Nachdem ich mich in letzter Zeit verstärkt mit Docker und dem zugehörigen Ökosystem beschäftige, habe ich begonnen, verschiedenste Dienste in Containern zu testen um zu sehen, ob in manchen Fällen LXC oder KVM nicht doch die bessere Wahl wäre...

    Weiterlesen...

Neueste Artikel

  • Migration der Webseite und aller OpenSource Projekte

    In eigener Sache...

    Weiterlesen...
  • AutoHideToolbar für Java Swing

    Ich habe eine neue Java Swing Komponente erstellt: Es handelt sich um einen Wrapper für von JToolBar abgeleitete Klassen, die die Werkzeugleiste minimieren und sie nur dann einblenden, wenn der Mauszeiger über ihnen schwebt.

    Weiterlesen...
  • Integration von EBMap4D in die sQLshell

    Ich habe bereits in einem früheren Artikel über meine ersten Erfolge berichtet, der sQLshell auf Basis des bestehenden Codes aus dem Projekt EBMap4D eine bessere Integration für Geo-Daten zu spendieren und entsprechende Abfragen, bzw. deren Ergebnisse auf einer Kartenansicht zu visualisieren.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen Codeberg-Repositories findet man hier.