diff --git a/uwsgi-python/tasks/apps/schrank-flask.yml b/uwsgi-python/tasks/apps/schrank-flask.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0b8e762675dcc0c0e18e64b9945e61c2d6754167
--- /dev/null
+++ b/uwsgi-python/tasks/apps/schrank-flask.yml
@@ -0,0 +1,40 @@
+---
+
+# https://github.com/ansible/ansible/issues/42983
+- name: ensure there exists a .ansible folder
+  file:
+    path: "{{app_path}}/.ansible"
+    state: directory
+    owner: "{{app_user}}"
+    group: "{{app_group}}"
+
+- name: install pdf utils
+  apt:
+    name: poppler-utils
+    state: present
+
+- name: ensure data model upgrades are applied  # noqa 301
+  command: "{{app_venv}}/bin/flask db upgrade"
+  args:
+    chdir: "{{app_path}}"
+  environment:
+    FLASK_APP: "{{app_program}}"
+  become: true
+  become_user: "{{app_user}}"
+  notify:
+    - "restart uwsgi instance {{app.instance}}"
+
+- name: ensure there a directory for the documents
+  file:
+    path: "{{schrank_document_path}}"
+    state: directory
+    owner: "{{app_user}}"
+    group: "{{schrank_document_group}}"
+    mode: "{{schrank_document_permissions}}"
+  notify:
+    - "restart uwsgi instance {{app.instance}}"
+
+- name: ensure the folder from above is not present anymore
+  file:
+    path: "{{app_path}}/.ansible"
+    state: absent
diff --git a/uwsgi-python/templates/apps/schrank-flask.j2 b/uwsgi-python/templates/apps/schrank-flask.j2
new file mode 100644
index 0000000000000000000000000000000000000000..2110a92f06425cbdb08e9028c3d20b574cd4959c
--- /dev/null
+++ b/uwsgi-python/templates/apps/schrank-flask.j2
@@ -0,0 +1,8 @@
+from secret_config import secret_key as SECRET_KEY
+
+SQLALCHEMY_DATABASE_URI = "postgresql://{{ app_user }}:@/{{ app_db_name }}"
+SQLALCHEMY_TRACK_MODIFICATIONS = False
+
+DOCUMENT_PATH = "{{schrank_document_path}}"
+SSO_URL = "{{schrank_sso_url}}"
+SSO_GROUP = "{{schrank_sso_group}}"
diff --git a/uwsgi-python/vars/schrank-flask.yml b/uwsgi-python/vars/schrank-flask.yml
new file mode 100644
index 0000000000000000000000000000000000000000..ff17cca5c77200a1c71f9b7944019860139ed7a9
--- /dev/null
+++ b/uwsgi-python/vars/schrank-flask.yml
@@ -0,0 +1,17 @@
+---
+
+app_name: schrank-flask
+app_user: schrankweb
+app_group: schrankweb
+app_program: server.py
+
+app_db_name: schrank
+app_db_type: postgres
+
+app_git_url: "git@git.fsmpi.rwth-aachen.de:fachschaft/schrank-web-flask.git"
+
+schrank_document_path: "{{app_path}}/documents"
+schrank_document_group: schrank
+schrank_document_permissions: "2750"
+schrank_sso_url: "https://sso.fsmpi.rwth-aachen.de/"
+schrank_sso_group: "fachschaft"