diff --git a/content/datasets/HHKeyDocs.md b/content/datasets/HHKeyDocs.md
new file mode 100644
index 0000000..2829130
--- /dev/null
+++ b/content/datasets/HHKeyDocs.md
@@ -0,0 +1,26 @@
++++
+author = "Christian Deuschle"
+date = "2023-11-29T9:00:00+02:00"
+title = "Hamburger Schlüsseldokumente zur deutsch-jüdischen Geschichte"
+website = "https://schluesseldokumente.net"
+
+
+loaded =
+category = "judaicalink"
+example = ""
+
+
+[[files]]
+
+
+
+ description = "Database of Institut für die Geschichte der deutschen Juden"
+
+
+[license]
+name = "CC4.0"
+image = "https://mirrors.creativecommons.org/presskit/buttons/88x31/png/by.png"
+uri = "https://creativecommons.org/licenses/by/4.0/"
+
++++
+Hamburger Schlüsseldokumente zur deutsch-jüdischen Geschichte is an online source edition realized by the Institute for the History of German Jews
diff --git a/content/disclaimer b/content/disclaimer
new file mode 100644
index 0000000..e69de29
diff --git a/content/offline.md b/content/offline.md
new file mode 100644
index 0000000..f16b454
--- /dev/null
+++ b/content/offline.md
@@ -0,0 +1,15 @@
+---
+description: "JudaicaLink provides support to publish and interlink existing reference works of the Jewish culture and history as Linked Data."
+keywords: ["about", "vision", "goal", "team"]
+---
+
+# We are currently offline.
+JudaicaLink is currently offline.
+We are moving our systems to Mannheim.
+
+Please check again in a few days.
+
+We are sorry for the inconveniance.
+
+The JudaicaLink Team
+
diff --git a/docker/installer.sh b/docker/installer.sh
new file mode 100644
index 0000000..0608eca
--- /dev/null
+++ b/docker/installer.sh
@@ -0,0 +1,89 @@
+#!/bin/bash
+
+colorred="\033[31m"
+colorpowder_blue="\033[1;36m" #with bold
+colorblue="\033[34m"
+colornormal="\033[0m"
+colorwhite="\033[97m"
+colorlightgrey="\033[90m"
+
+printf " ${colorred} ## ${colorlightgrey} . \n"
+printf " ${colorred} ## ## ## ${colorlightgrey} == \n"
+printf " ${colorred}## ## ## ## ${colorlightgrey}=== \n"
+printf " /\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\\\___/ === \n"
+printf " ${colorblue}~~~ ${colorlightgrey}{${colorblue}~~ ~~~~ ~~~ ~~~~ ~~ ~ ${colorlightgrey}/ ===- ${colorblue}~~~${colorlightgrey}\n"
+printf " \\\______${colorwhite} o ${colorlightgrey} __/ \n"
+printf " \\\ \\\ __/ \n"
+printf " \\\____\\\______/ \n"
+printf "${colorpowder_blue} \n"
+printf " | | \n"
+printf " __ | __ __ | _ __ _ \n"
+printf " / \\\| / \\\ / |/ / _\\\ | \n"
+printf " \\\__/| \\\__/ \\\__ |\\\_ \\\__ | \n"
+printf " ${colornormal} \n"
+
+echo -e "\033[0;34m" "
+ .(###(.
+ .(#####/
+ /##(##,
+ .#(. .#(.
+ .####(. *#, /#, (###/.
+ /########################################(
+ .*/##. *#,/###########,/#, .###/.
+ ,#/ .#(.##############(.#(. (#.
+ .(#/#,/#################,/#*#(
+ .##/,###################.(#(
+ *#* (#,################(,#( /#.
+ .##. ,#//#############,/#. .#(
+ .#####. .(#./#########/.#( .####,
+ ##########################################,
+ ./(*. .(#. .#( *##/.
+ ,#/ /#,
+ ,#####.
+ (#####*
+ .(#/. "
+
+printf " ${colornormal} \n"
+
+echo "Welcome to JudaicaLink's download generator script!"
+echo "(c) 2022 JudaicaLink"
+echo "Benjamin Schnabel
"
+echo "----------------------------------------"
+echo "creating directories..."
+
+alias python='/usr/bin/python3'
+
+cd /data/judaicalink/web.judaicalink.org/ || exit
+chmod +x ./update.sh
+chmod +x ./rebuild.sh
+echo "done."
+
+#echo "----------------------------------------"
+#echo "downloading Judaicalink site..."
+#cd /data/judaicalink/web.judaicalink.org/judaicalink-site/ || exit
+#git clone https://github.com/judaicalink/judaicalink-site.git
+#latesttag=$(git describe --tags)
+#echo checking out ${latesttag}
+#git checkout ${latesttag}
+#echo "done." #
+
+echo "----------------------------------------"
+echo "updating and building..."
+cd /data/judaicalink/web.judaicalink.org/ || exit
+./update.sh
+./rebuild.sh
+echo "done."
+
+# TODO: add requirements
+
+python3 -m venv venv
+source venv/bin/activate
+
+cd /data/judaicalink/web.judaicalink.org/judaicalink-site/ || exit
+
+pip3 install -r requirements.txt
+# Generate statistics
+python3 statistics.py
+
+# Generate beacon file
+python3 generate_beacon.py
\ No newline at end of file
diff --git a/docker/nginx/nginx.conf b/docker/nginx/nginx.conf
new file mode 100644
index 0000000..5aa29e3
--- /dev/null
+++ b/docker/nginx/nginx.conf
@@ -0,0 +1,37 @@
+# Generated by nginxconfig.io
+# https://www.serverion.com/nginx-config/#?0.domain=localhost&0.document_root=%2Fdata%2Fjudaicalink%2Fweb.judaicalink.org%2Fhtdocs&0.https=false&0.php=false&0.django&0.index=index.html&0.fallback_html&0.access_log_domain&0.error_log_domain
+
+user www-data;
+pid /run/nginx.pid;
+worker_processes auto;
+worker_rlimit_nofile 65535;
+include /etc/nginx/modules-enabled/*.conf;
+
+events {
+ multi_accept on;
+ worker_connections 65535;
+}
+
+http {
+ charset utf-8;
+ sendfile on;
+ tcp_nopush on;
+ tcp_nodelay on;
+ server_tokens off;
+ log_not_found off;
+ types_hash_max_size 2048;
+ client_max_body_size 16M;
+ keepalive_timeout 65;
+
+ # MIME
+ include mime.types;
+ default_type application/octet-stream;
+
+ # logging
+ access_log /var/log/nginx/access.log;
+ error_log /var/log/nginx/error.log warn;
+
+ # load configs
+ include /etc/nginx/conf.d/*.conf;
+ include /etc/nginx/sites-enabled/*;
+}
\ No newline at end of file
diff --git a/docker/nginx/sites-available/judaicalink.conf b/docker/nginx/sites-available/judaicalink.conf
new file mode 100644
index 0000000..6e5cdc9
--- /dev/null
+++ b/docker/nginx/sites-available/judaicalink.conf
@@ -0,0 +1,27 @@
+server {
+ listen 80;
+ listen [::]:80;
+
+ server_name judaicalink;
+ root /data/judaicalink/web.judaicalink.org/htdocs;
+
+ # logging
+ access_log /var/log/nginx/localhost.access.log;
+ error_log /var/log/nginx/localhost.error.log warn;
+
+ # index.html fallback
+ location / {
+ try_files $uri $uri/ /index.html;
+ }
+
+}
+
+# subdomains redirect
+server {
+ listen 80;
+ listen [::]:80;
+
+ server_name *.localhost;
+
+ return 301 http://localhost$request_uri;
+}
\ No newline at end of file
diff --git a/docker/site/rebuild.sh b/docker/site/rebuild.sh
new file mode 100644
index 0000000..a75d7bb
--- /dev/null
+++ b/docker/site/rebuild.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+BASEDIR=/data/judaicalink/web.judaicalink.org
+HTDOCS=$BASEDIR/htdocs
+WORKDIR=$BASEDIR/judaicalink-site
+BRANCH=master
+
+pushd $WORKDIR
+git fetch origin $BRANCH
+git merge origin/$BRANCH
+hugo --cleanDestinationDir && rsync -avz --delete public/ $HTDOCS
+popd
diff --git a/docker/site/update.sh b/docker/site/update.sh
new file mode 100644
index 0000000..318ed21
--- /dev/null
+++ b/docker/site/update.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+BASEDIR=/data/judaicalink/web.judaicalink.org
+HTDOCS=$BASEDIR/htdocs
+WORKDIR=$BASEDIR/judaicalink-site
+BRANCH=master
+
+pushd $WORKDIR
+git fetch origin $BRANCH
+CHANGES=`git status -s -b -uno`
+if [ "$CHANGES" != "## $BRANCH...origin/$BRANCH" ]; then
+ echo "Found updates, rebuilding site."
+ git merge origin/$BRANCH
+ hugo --cleanDestinationDir && rsync -avz --delete public/ $HTDOCS
+ #/data/judaicalink/loader.sh
+else
+ echo "No changes, exiting"
+fi
+popd
diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html
index 611d82a..564c442 100644
--- a/layouts/partials/footer.html
+++ b/layouts/partials/footer.html
@@ -4,7 +4,7 @@