Skip to content

Commit

Permalink
Devcontainer und SQlite-DB
Browse files Browse the repository at this point in the history
  • Loading branch information
felixlohmeier committed Jan 29, 2024
1 parent 6fe45eb commit 94aa3b1
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 1 deletion.
17 changes: 17 additions & 0 deletions .devcontainer/.devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"image": "mcr.microsoft.com/devcontainers/universal:2",
"features": {
},
"postCreateCommand": "pip3 install datasette datasette-codespaces sqlite-utils",
"postAttachCommand": {
"server": "datasette data.db --create",
"import": "bash build.sh"
},
"forwardPorts": [8001],
"portsAttributes": {
"8001": {
"label": "Datasette",
"onAutoForward": "notify"
}
}
}
14 changes: 13 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

Die Entwicklung erfolgt exemplarisch am Corpus des Quellenrepertoriums der Exilbibliothek von [Alfred Döblin](https://www.dla-marbach.de/bibliothek/projekte/quellenrepertorium-der-exil-bibliotheken-im-deutschen-literaturarchiv-marbach-modul-1-alfred-doeblin/). Für die folgenden Beispiele werden die entsprechenden Collections vom Datendienst des DLA bezogen. Diese Ausgangsdaten liegen im Ordner [data](data).

## Datasette Lite
## Datasette Lite mit JSON

Datasette Lite läuft lokal im Browser über die WebAssembly-Technologie. Es ermöglicht die Anzeige und Exploration der Daten mit SQL-Queries.

Expand All @@ -15,3 +15,15 @@ https://dla-marbach.github.io/datasette/?json=https://github.com/dla-marbach/dat
Bei der Nutzung von Facetten, Filtern und weiteren Funktionen werden diese als Parameter in der URL vermerkt. Diese URLs können als Direktlinks für spezifische Sichten verwendet und geteilt werden. Beispiel mit drei ausgewählten Spalten und einer vorausgewählten Facette:

https://dla-marbach.github.io/datasette/?json=https://github.com/dla-marbach/datasette/blob/main/data/doeblin-bibliothek-titel.json?_col=id&_col=display&_col=personBy_display_mv&_facet=category

## Datasette Lite mit SQLite-Datenbank

Weitere Funktionen wie Volltextsuchen sind verfügbar, wenn eine SQLite-Datenbank bereitgestellt wird. Dazu gibt es vom gleichen Entwickler (Simon Willison) ein begleitendes Tool sqlite-utils. Das Script [build.sh](build.sh) enthält ein Beispiel für das Quellenrepertorium der Exilbibliothek von Alfred Döblin und generiert die SQLite-Datenbank `data.db`. Diese Datenbank kann dann direkt mit Datasette Lite aufgerufen werden:

https://dla-marbach.github.io/datasette/?url=https://github.com/dla-marbach/datasette/blob/main/data.db

## Datasette Vollversion mit Installation

Noch mehr Funktionen als Datasette Lite bietet die Vollversion von Datasette. Diese erfordert jedoch eine Installation lokal oder auf einem Server. Damit können die vielen Plugins genutzt werden, beispielsweise datasette-vega zur Visualisierung von Geokoordinaten.

Zum Ausprobieren kann GitHub Codespaces verwendet werden. Dieses Repository ist so vorbereitet, dass beim Starten des Codespace eine Datasette-Instanz gestartet und die SQLite-Datenbank frisch generiert wird.
11 changes: 11 additions & 0 deletions build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#!/bin/bash
rm -f data.db
sqlite-utils insert data.db doeblin-werke data/doeblin-werke.json --alter --pk=id
sqlite-utils enable-fts data.db doeblin-werke display
sqlite-utils insert data.db doeblin-bibliothek-titel data/doeblin-bibliothek-titel.json --alter --pk=id
sqlite-utils enable-fts data.db doeblin-bibliothek-titel display
sqlite-utils insert data.db doeblin-bibliothek-exemplare data/doeblin-bibliothek-exemplare.json --alter --pk=id
sqlite-utils enable-fts data.db doeblin-bibliothek-exemplare display
sqlite-utils insert data.db doeblin-bibliographie data/doeblin-bibliographie.json --alter --pk=id
sqlite-utils enable-fts data.db doeblin-bibliographie display
sqlite-utils optimize data.db
Binary file added data.db
Binary file not shown.

0 comments on commit 94aa3b1

Please sign in to comment.