diff --git a/templates/footer.html b/templates/footer.html
index 124760db1749fc44de57facda2f91bced3a0056b..5481d5cb61ccaafeb9fde405eab12c1251e6d896 100644
--- a/templates/footer.html
+++ b/templates/footer.html
@@ -1,6 +1,6 @@
 {%- import "macros/svgs.jinja" as svg -%}
 
-{%- set jupyter_name = "Jupyter-JSC" -%}
+{%- set jupyter_name = "Jupyter4NFDI" -%}
 
 {#- Get all systems configured for this hub,
     sort them by weight and assign status ids -#}
diff --git a/templates/login.html b/templates/login.html
index 9a3d7941ee35cb24a7af0cbbd903fd7d48f7c1ce..4d5c4c75dd93c613ba5e9cbaae4e8b9662266bde 100644
--- a/templates/login.html
+++ b/templates/login.html
@@ -57,28 +57,21 @@
           <button type="button" data-bs-target="#login-carousel" data-bs-slide-to="3" aria-label="Slide 4"></button>
         </div>
         <div class="carousel-inner">
-          {{ carousel_item("Jupyter", "https://jupyter.org", "Supercomputing in Your Browser",
-          "Jupyter-JSC is designed to provide the rich high performance computing (HPC) ecosystem 
-          to the world's most popular software: web browsers. JupyterLab is a web-based interactive 
-          development environment for Jupyter notebooks, code, and data. JupyterLab is flexible 
-          to support a wide range of workflows in data science, scientific computing, and machine learning.",
-          "active") }}
-
           {{ carousel_item("Jupyter Notebooks", "https://jupyter-notebook.readthedocs.io/en/stable/notebook.html",
-          "Share your Workflows", "Jupyter-JSC allows you to create and share documents that contain 
+          "Share your Workflows", "Jupyter4NFDI allows you to create and share documents that contain 
           live code, equations, visualizations and explanatory text. Uses include: data cleaning and transformation, 
           numerical simulation, statistical modeling, machine learning and much more.")
           }}
 
           {{ carousel_item("JupyterLab", "https://jupyterlab.readthedocs.io", "Next-Generation Notebook Interface",
-          "Jupyter-JSC gives access to JupyterLab, a web-based interactive development environment for Jupyter 
+          "Jupyter4NFDI gives access to JupyterLab, a web-based interactive development environment for Jupyter 
           notebooks, code, and data. JupyterLab is flexible: configure and arrange the user interface to support a 
           wide range of workflows in data science, scientific computing, and machine learning. JupyterLab is extensible 
           and modular: write plugins that add new components and integrate with existing ones.") 
           }}
 
           {{ carousel_item("JupyterHub", "https://jupyterhub.readthedocs.io", "Serving Jupyter Notebooks for Multiple
-          Users", "Jupyter-JSC is a JupyterHub to serve Jupyter notebooks for multiple users. It can be used in 
+          Users", "Jupyter4NFDI is a JupyterHub to serve Jupyter notebooks for multiple users. It can be used in 
           classes of students, a corporate data science group or scientific research group. It is a multi-user hub 
           that spawns, manages, and proxies multiple instances of the single-user Jupyter notebook server.") }}
         </div>
diff --git a/templates/page.html b/templates/page.html
new file mode 100644
index 0000000000000000000000000000000000000000..b47f63814380ed4fa2e7c0cf7453071c78834633
--- /dev/null
+++ b/templates/page.html
@@ -0,0 +1,135 @@
+<!DOCTYPE HTML>
+<html>
+
+<head>
+  <meta charset="utf-8">
+  {% block meta -%}
+  {%- endblock -%}
+
+  <title>{% block title %}Jupyter4NFDI{% endblock %}</title>
+  <meta http-equiv="X-UA-Compatible" content="chrome=1">
+  <meta property="og:image" content='{{ static_url("images/mini_website.jpg", include_version=True) }}'>
+  <meta property="og:locale" content="en_US">
+  <meta property="og:site_name" content="jupyter-jsc">
+  <meta property="og:title" content="jupyter-jsc">
+  <meta property="og:type" content="website">
+  <meta property="og:url" content="https://{{hostname}}{{ base_url|default('', true) }}">
+  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
+  {% block favicon -%}
+  <link rel="icon" href='{{static_url("images/favicon.svg", include_version=True)}}' type="jpg/png" />
+  {%- endblock %}
+
+  <link rel="stylesheet" href='{{static_url("components/bootstrap-5.0/dist/css/bootstrap.min.css")}}' type="text/css" />
+  <link rel="stylesheet" href='{{static_url("components/font-awesome-4.7.0/css/font-awesome.min.css")}}' type="text/css" />
+  <link rel="stylesheet" href='{{static_url("css/base.css")}}' type="text/css" />
+  <link rel="stylesheet" href='{{static_url("css/header.css")}}' type="text/css" />
+  <link rel="stylesheet" href='{{static_url("css/footer.css")}}' type="text/css" />
+  <link rel="stylesheet" href='{{static_url("components/jquery-confirm/jquery-confirm.min.css")}}' />
+  {% block stylesheet -%}
+  {%- endblock %}
+
+  <script src='{{static_url("components/jquery/dist/jquery.min.js")}}' type="text/javascript" charset="utf-8"></script>
+  <script src='{{static_url("components/bootstrap-5.0/dist/js/bootstrap.bundle.min.js")}}' type="text/javascript" charset="utf-8"></script>
+  <script src='{{static_url("components/requirejs/require.js")}}' type="text/javascript" charset="utf-8"></script>
+  <script src='{{static_url("components/jquery/dist/jquery.min.js")}}'></script>
+  <script src='{{static_url("components/jquery-confirm/jquery-confirm.min.js")}}'></script>
+  {% block scripts -%}
+  {%- endblock %}
+  <script>
+    var evtSourcesGlobal = {};
+    require.config({
+      {%- if version_hash -%}
+      urlArgs: "v={{version_hash}}",
+      {%- endif -%}
+      baseUrl: '{{static_url("js", include_version=True)}}',
+      paths: {
+        components: '../components',
+        jquery: '../components/jquery/dist/jquery.min',
+        bootstrap: '../components/bootstrap-5.0/dist/js/bootstrap.min',
+        moment: "../components/moment/moment",
+      },
+      shim: {
+        bootstrap: {
+          deps: ["jquery"],
+          exports: "bootstrap"
+        },
+      }
+    });
+  </script>
+  <script type="text/javascript">
+    window.jhdata = {
+      base_url: "{{ base_url }}",
+      prefix: "{{prefix}}",
+      {%- if user %}
+      user: "{{user.json_escaped_name}}",
+      {%- endif -%}
+      {%- if user and user.active %}
+      user_active: true,
+      {%- else %}
+      user_active: false,
+      {%- endif -%}
+      {%- if admin_access %}
+      admin_access: true,
+      {%- else %}
+      admin_access: false,
+      {%- endif -%}
+      {%- if not no_spawner_check and user and user.spawner.options_form %}
+      options_form: true,
+      {%- else %}
+      options_form: false,
+      {%- endif %}
+      {%- if cancel_url %}
+      cancel_url: "{{ cancel_url }}",
+      {%- endif %}
+      xsrf_token: "{{ xsrf_token }}",
+    }
+  </script>
+</head>
+
+<body>
+  <noscript>
+    <div id='noscript'>
+      JupyterHub requires JavaScript.<br>
+      Please enable it to proceed.
+    </div>
+  </noscript>
+
+  <div class="d-flex flex-column h-100">
+    {#- HEADER -#}
+    {% include "header.html" %}
+
+    {#- MAIN #}
+    <main>
+    {% block main %}
+    {% endblock %}
+    </main>
+
+    {#- FOOTER #}
+    {% include "footer.html" %}
+  </div>
+
+  {#- SCRIPTS #}
+  <script src='{{static_url("js/logout.js", include_version=True) }}' type="text/javascript" charset="utf-8"></script>
+  <script type="text/javascript">
+    // Enable tooltips everywhere
+    function enableTooltips() {
+      var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'));
+      var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
+        return new bootstrap.Tooltip(tooltipTriggerEl);
+      })
+    }
+    $( function() { enableTooltips() });
+  </script>
+  {% block script -%}
+  {%- endblock %}
+  <script>
+  window.onbeforeunload = function() {
+    if (typeof evtSourcesGlobal !== 'undefined') {
+        for (const [key, value] of Object.entries(evtSourcesGlobal)) {
+            value.close();
+        }
+    }
+  }
+  </script>
+</body>
+</html>