Knochendatenbank für die Forschung

Eine zweisprachige Webanwendung, in der Forschende Knochenfunde mit Befunden, Fundort und Bildern erfassen und auf einer Karte auswerten.

Ausgangslage

Für ein Forschungsprojekt sollten Knochenfunde einheitlich dokumentiert werden: Befunde, Fundort und Bodenverhältnisse, Fotos und der Ort der Aufbewahrung. Die Daten sollten sich nach Merkmalen filtern und räumlich vergleichen lassen, für Teams in mehreren Ländern.

Ansatz

Wir haben eine Rails-7-Anwendung mit PostgreSQL gebaut. Das Datenmodell bildet Knochen, Befunde, Fund- und Lagerorte als eigene, verknüpfte Tabellen ab, die Oberfläche nutzt Hotwire mit Stimulus und ist auf Englisch und Spanisch verfügbar. Fundorte werden auf einer Karte mit Apple MapKit JS gesetzt und gefiltert, die Tokens dafür stellt die Anwendung selbst aus. Bilder liegen in einem S3-kompatiblen Objektspeicher.

Betrieben wird die Anwendung als Container auf Kubernetes, mit getrennter Staging- und Produktionsumgebung. Flux spielt neue Versionen aus, Secrets sind mit SOPS verschlüsselt, Fehler meldet GlitchTip.

Ergebnis

Die Datenbank wurde in Zusammenarbeit mit den Forschenden entwickelt und nach ihrem Feedback erweitert, etwa um Filter und Knochenkategorien.