diff --git a/config.json b/config.json
index d5449808d3ffc2d1758f8ebf512c3837a64d6ea4..f0573abd6ef5d7e5a60b890680d459219bb1c1c1 100644
--- a/config.json
+++ b/config.json
@@ -12,6 +12,14 @@
 		"external": "_blank"
 	},
 	"default_status": "published",
+	"gitlab":  {
+		"edit_url": {
+			"suffix": ""
+		},
+		"view_url": {
+			"suffix": "?plain=1"
+		}
+	},
 	"pandoc": {
 		"mimetypes": {
 			"text/markdown": {
diff --git a/docs/config.json b/docs/config.json
index 63476134ba992caf75fafd2b9814938706119600..ba459a8a4e1368f506b757fa037f47b65aa8418c 100644
--- a/docs/config.json
+++ b/docs/config.json
@@ -4,6 +4,14 @@
 		{ "link": "tag:admin" },
 		{ "link": "tag:internal" }
 	],
+	"gitlab":  {
+		"edit_url": {
+			"prefix": "https://gitlab.gwdg.de/-/ide/project/GAUMI-fginfo/fg-website/edit/master/-/docs/"
+		},
+		"view_url": {
+			"prefix": "https://gitlab.gwdg.de/GAUMI-fginfo/fg-website/-/blob/master/docs/"
+		}
+	},
 	"lang": {
 		"de": {
 			"sitename": "Dokumentation Fachgruppenwebseite",
diff --git a/fgs/datatypes.py b/fgs/datatypes.py
index de7c6637d71889147a895d378caa0d785aa781cf..feb7b149f2e1aef8a730dc4cb406bf2d7acab9dd 100644
--- a/fgs/datatypes.py
+++ b/fgs/datatypes.py
@@ -127,6 +127,25 @@ class Page:
         #self.url = self.lang + '/' + self.category.name + '/' + self.slug + ".html"
         self.link = self._factories['link'].get_by_type("slug", self.slug, self.lang)
 
+        gitlabsettings = self._config["gitlab"]
+
+        raw_edit_url = gitlabsettings["edit_url"]["prefix"]
+        raw_edit_url += '/'.join(self.subpath)
+        if len(self.subpath):
+            raw_edit_url += '/'
+        raw_edit_url += self.filename
+        raw_edit_url += gitlabsettings["edit_url"]["suffix"]
+        self.edit_url = self._factories['link'].get_by_raw(raw_edit_url, self.lang)
+
+        raw_view_url = gitlabsettings["view_url"]["prefix"]
+        raw_view_url += '/'.join(self.subpath)
+        if len(self.subpath):
+            raw_view_url += '/'
+        raw_view_url += self.filename
+        raw_view_url += gitlabsettings["view_url"]["suffix"]
+        self.view_url = self._factories['link'].get_by_raw(raw_view_url, self.lang)
+
+
     def get_config(self):
         if not self._config:
             self._config = self._factories['config'].get(self.lang)
diff --git a/lang.json b/lang.json
index 5d9c78ce26d61eb2e910edbdd0c81f887696e498..b841263018d081ae1aa0877832b4566b4a85f32a 100644
--- a/lang.json
+++ b/lang.json
@@ -29,7 +29,13 @@
 			"tags_prefix": "Tags: ",
 			"tags_suffix": "",
 			"slug_prefix": "Slug: ",
-			"slug_suffix": ""
+			"slug_suffix": "",
+			"edit_url_text": "[Seite bearbeiten]",
+			"view_url_text": "[Quelltext]"
+		},
+		"tag": {
+			"edit_url_text": "[Seite bearbeiten]",
+			"view_url_text": "[Quelltext]"
 		},
 		"atom": {
 			"title": "<Dein Seitenname> Atom Feed"
diff --git a/theme/templates/index.html b/theme/templates/index.html
index d2cef76f37bda24d711453493e6dc91fae648dea..22217248f23a26dde627efd610d94a79c54bbb78 100644
--- a/theme/templates/index.html
+++ b/theme/templates/index.html
@@ -13,4 +13,11 @@
 {% endblock %}
 
 {% block page_footer %}
+	<footer class="page-footer content">
+		<div>
+			{{ linkr.render(page.edit_url, t[l].page.edit_url_text, l) }} | 
+			{{ linkr.render(page.view_url, t[l].page.view_url_text, l) }}
+		</div>
+
+	</footer>
 {% endblock %}
diff --git a/theme/templates/page.html b/theme/templates/page.html
index fdb41cbd4c785229b9cf201685aa017a02832594..cf7e1c94aa9909571ff4cbf5c1f3c498d9707634 100644
--- a/theme/templates/page.html
+++ b/theme/templates/page.html
@@ -106,5 +106,10 @@
 			{{ t[l].page.slug_suffix }}
 		</div>
 
+		<div>
+			{{ linkr.render(page.edit_url, t[l].page.edit_url_text, l) }} | 
+			{{ linkr.render(page.view_url, t[l].page.view_url_text, l) }}
+		</div>
+
 	</footer>
 {% endblock %}
diff --git a/theme/templates/tag.html b/theme/templates/tag.html
index b1e7cb83af3ba1cff3f1775a813f5c30b5a20ef0..ddeabb9488e3254990104db9ff44be8ab627d6c3 100644
--- a/theme/templates/tag.html
+++ b/theme/templates/tag.html
@@ -11,3 +11,14 @@
 		{{ render.section({"type": "tag", "tag": tag, "num": None}, l) }}
 	</section>
 {% endblock main %}
+
+{% block page_footer %}
+	{%- if tag.page -%}
+	<footer class="page-footer content">
+		<div>
+			{{ linkr.render(tag.page.edit_url, t[l].tag.edit_url_text, l) }} | 
+			{{ linkr.render(tag.page.view_url, t[l].tag.view_url_text, l) }}
+		</div>
+	</footer>
+	{%- endif -%}
+{% endblock %}