diff --git a/.gitignore b/.gitignore
index aa9c4655930340c711b4b8906cc3ea13190a3976..63dd15e1b11768ce2d2e6add4b9d4841736ada43 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,5 +2,5 @@ firmware/build/
 firmware/esp-idf/
 firmware/xtensa-esp32-elf/
 firmware/main/config.h
-server/config.php
+server/www/config.php
 sketch_timecube/config.h
diff --git a/INSTALL.md b/INSTALL.md
index 0f7e2b50ef6c306efba02377ebda2a7379665e47..c556afc818ab4a53a8a0bbcba3fd172ee7217d7b 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -109,3 +109,47 @@ Auch hier muss zuerst eine Konfiguration (im Beispiel `config.h` im aktuellen Ve
 wozu die Vorlage im Repo unter `firmware/main/example-config.h` verwendet werden kann.
 
     docker run --rm -it -v $(pwd)/config.h:/timecube/firmware/main/config.h --device=/dev/ttyUSB0 inf4/timecube
+
+
+
+Webfrontend
+===========
+
+Der Zeitwürfel läd die Daten regelmäßig über das WLAN an das Frontend.
+Dafür wird ein Webserver mit PHP und einer PostgreSQL Datenbank benötigt (kann aber leicht zu einer anderen Datenbank geändert werden, siehe `server/www/index.php:18`).
+Die Zugangsdaten werden in `server/www/config.php` konfiguriert, ein Beispiel ist unter `server/example-config.php` zu finden.
+
+
+Lokal
+-----
+
+Das Frontend des Zeitwürfels kann einfach in eine bestehende Serverinfrastruktur integriert werden.
+
+### Webserver
+
+Es muss sichergestellt werden, dass die Submodule im Repo geladen sind:
+
+    git submodule init
+    git submodule update
+
+Danach muss lediglich noch das Verzeichnis `server/www/` über die Webserverkonfiguration zugänglich gemacht werden.
+
+
+### Datenbank
+
+Eine neue Datenbank muss erstellt werden, das Schema ist unter `server/database.sql` zu finden.
+Um neue Benutzer anzulegen, wird die MAC Adresse des Würfels benötigt (kann z.B. über eine serielle Konsole beim verbundenen Zeitwürfel ausgelesen werden), die Datei `server/insert_new_user.sql` zeigt den dafür notwendigen SQL Query.
+
+
+Docker
+------
+
+Alternativ kann das ganze Webfrontend (Webserver und Datenbank) auch in Docker gestartet werden, dazu gibt es mit `server/docker_compose.yml` eine vorgegeben Spezifikation, welche einfach gestartet werden kann:
+
+    cd server
+    docker-compose up -d
+
+und schon kann über http://localhost/ zugegriffen werden
+(für den Beispielbenutzer `chris` einfach http://localhost/chris/ aufrufen)
+
+Dieser Dienst muss nun noch über das Netzwerk erreichbar sein, die Würfelkonfiguration muss den dazu passenden Host haben.
diff --git a/README.md b/README.md
index d9cab9a66e625321d26cc01133868a0e4e3f7e76..ac0f941e98ea40f0eeb97ba1f4de9514de5cb9f8 100644
--- a/README.md
+++ b/README.md
@@ -25,7 +25,7 @@ Anleitung
 ---------
 
   * [Detaillierte und bebilderte Montageanleitung](MONTAGE.md)
-  * [Anleitung zum Bauen der Firmware für den Würfel](INSTALL.md)
+  * [Anleitung zum Bauen der Firmware für den Würfel und die Einrichtung des Webfrontends](INSTALL.md)
 
 
 Lizenz