11. Technischer Report¶
11.1. Quellcodeverwaltung¶
Zum späteren Nachvollziehen von Änderungen wird der Ordner, der alle Daten der Arbeit beinhaltet, mit dem Versionsverwaltungssystem git verwaltet.1
Das Archiv der Quelldateien ist unter https://die-holzgewächse-des-friedrichshains.de/data/src/project.tar.gz zu beziehen.
11.2. Thesis¶
Die Thesis ist als reStructuredText ausgezeichnet und wird zu einer Ausgabe als HTML-Dokumente und als PDF via LaTeX konvertiert.
11.3. Webanwendung¶
Die Webanwendung verwendet unter Anderem die folgenden Technologien und Programmbibliotheken als unmittelbare Abhängigkeiten. Jene, die angepasst wurden, sind mit einem 🛠 versehen, originär für dieses Projekt entwickelte mit einem ✪. Teilweise wurden die Anpassungen zur Übernahme vorgeschlagen und übernommen.
- Docker und Docker-Compose zur Konfiguration und zum Betrieb der verschiedenen Dienste
- Django als Web Application Framework
- Elasticsearch für die Indizierung und das Durchsuchen der Webseiten
- ✪ inxs wurde eigens für dieses Projekt entwickelt; es erlaubt das Regeln folgenden Transformieren von XML-Dokumenten, ähnlich dem Paradigma von XSLT
- Javascript für die Implementierung der Anwendungslogik in den Webclients
- Jinja2 für das Templating der HTML-Ausgabe
- neo4j als Datenbank für die extrahierte, botanische Taxonomie
- 🛠 neomodel zur Modellierung der Datenbank als Python-Objekte
- nginx als Proxy für die Webanwendung und zum Ausliefern statischer Daten
- Python für die Implementierung der Anwendungslogik des Servers
- Redis als Cache für verschiedene Daten
- 🛠 Sphinx zum Konvertieren der Thesis nach HTML
- ✪ zudem wurde ein Framework als Prototyp entwickelt, das es erlaubt, Modelle zum ergonomischen und ressourcensparenden Arbeiten über Anwendungen hinweg mit unregelmäßig strukturierten XML-Dokumenten als Python-Objekte zu benutzen; konkret wurde ein Modell, das TEI-Dokumente abbildet, entworfen.
Fußnoten
[1] | git hat seinen Ursprung als Werkzeug für Software-EntwicklerInnen, erfreut sich aber insbesondere wegen verfügbarer Webplattformen zum kollaborativen Arbeiten auch in anderen Sphären wachsender Popularität, um Daten im Textformat zu pflegen. |