Ein grundlegendes Archivierungstool für Discourse

Archivierungstool mit Codex Mai 2026 aktualisiert

Es scheint ziemlich knifflig zu sein, eine gesamte Discourse-Website in eine statische Version zu überführen. Laut diesem Beitrag von Jeff Atwood ist dies „viel schwieriger, als man denkt“. Es scheint auch, dass dies für das Discourse-Team keine Priorität hat, was völlig verständlich ist.

Für meine Zwecke stellte ich jedoch fest, dass ich wirklich eine Möglichkeit benötigte, einfache, statische HTML-Versionen meiner Discourse-Sites zu erstellen. Ich nutze Discourse seit einigen Jahren als Diskussionsforum beim Unterricht meiner Mathematikvorlesungen an der Universität. Daher ziehe ich alle paar Monate ein oder zwei Sites zurück und starte ein oder zwei neue. Offensichtlich haben die Diskussionen auf den zurückgezogenen Sites einen Wert, sodass ich wirklich eine Möglichkeit benötigte, sie zu archivieren. Letztendlich entschied ich mich, mein eigenes Tool zu entwickeln.

Die Grundidee ist einfach: Verwenden Sie die Discourse-API, um die Site zu durchsuchen, die bearbeitete Version jedes Beitrags abzurufen und diese in HTML zu überführen. Das Tool konzentriert sich weitgehend auf meine eigenen Bedürfnisse als Mathematikprofessor an einer Universität, der kleine Discourse-Foren zur Unterstützung meiner Mathematikvorlesungen nutzt. Daher sollte mathematischer Inhalt wie f(x)=e^{-x^2} automatisch mit MathJax V4 gesetzt werden, und mit Backticks umschlossene Code-Blöcke, die als sage gekennzeichnet sind, werden in aktive Sage-Zellen umgewandelt.

Wenn Sie interessiert sind, können Sie

einsehen.

Hinweis

Die Aktualisierung des Archivierungstools wurde weitgehend mit Codex durchgeführt.