diff --git a/portal/static/js/components/pages/Calendar.mjs b/portal/static/js/components/pages/Calendar.mjs
new file mode 100644
index 0000000000000000000000000000000000000000..c484e2bf80a819b5ec4358161659e3dd3c2cba68
--- /dev/null
+++ b/portal/static/js/components/pages/Calendar.mjs
@@ -0,0 +1,18 @@
+import { Base } from "./Base.mjs"
+
+export const Calendar = {
+    oncreate() {
+        document.title = "Kalender · FS Coli Portal"
+    },
+    view() {
+        return m(Base, [
+            m("section", [
+                m("iframe", {
+                  src: "https://cloud.stura.uni-heidelberg.de/index.php/apps/calendar/embed/HptQm9caKgi2kirx/dayGridMonth/now",
+                  style: {width: "90vw", height: "80vh", borderRadius: "20px", overflow: "hidden"},
+                  frameborder: "0"
+                })
+            ]),
+        ])
+    },
+}
diff --git a/portal/static/js/components/pieces/Nav.mjs b/portal/static/js/components/pieces/Nav.mjs
index 00d9aee1611029d118718f36f34c7ab1e8814c4e..f07bdaf1e0fadf1e406945c9e09ef0e12a49c00c 100644
--- a/portal/static/js/components/pieces/Nav.mjs
+++ b/portal/static/js/components/pieces/Nav.mjs
@@ -54,6 +54,13 @@ export const Nav = {
                                 label: "Freischalten",
                             }),
                         ),
+                        m(
+                            "li",
+                            m(NavPageLink, {
+                                href: "/calendar",
+                                label: "Kalender",
+                            }),
+                        ),
                     ]),
                 ),
                 m(
diff --git a/portal/static/js/portal.mjs b/portal/static/js/portal.mjs
index c47a8e281884c59e11f0c98b010985a941ac727f..918077c449b587845607fc003998517ea5f7262c 100644
--- a/portal/static/js/portal.mjs
+++ b/portal/static/js/portal.mjs
@@ -3,6 +3,7 @@ import { Uni } from "./components/pages/UniServices.mjs"
 import { Start } from "./components/pages/Start.mjs"
 import { Unlock } from "./components/pages/Unlock.mjs"
 import { Fachschaftssitzung } from "./components/pages/Fachschaftssitzung.mjs"
+import { Calendar } from "./components/pages/Calendar.mjs"
 import { Login } from "./components/pages/Login.mjs"
 import { Me } from "./components/pages/Me.mjs"
 import "/static/lib/mithril/mithril.min.js"
@@ -15,6 +16,7 @@ m.route(document.body, "/", {
     "/uni-services": Uni,
     "/unlock": Unlock,
     "/fachschaftssitzung": Fachschaftssitzung,
+    "/calendar": Calendar,
     "/login": Login,
     "/me": Me,
 })