diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f8a99cf4cc0168e3e3a810fa1116002f6275c69b..8cd28a2d115bde1103c9b2090a3df71c1819efc0 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -78,6 +78,7 @@ build_website:
   before_script:
     - apk add --update nodejs npm
   script:
+    - echo "'${WEBSITE_PUBLIC_PATH}'"
     - npm install
     - npm run build
     # optionally, you can activate gzip support with the following line:
@@ -91,9 +92,16 @@ build_website:
     - if: $CI_SERVER_HOST == "gitlab.jsc.fz-juelich.de"
       variables:
         WEBSITE_PUBLIC_PATH: $CI_PROJECT_NAME
-    - if: $CI_SERVER_HOST == "jugit.fz-juelich.de"
+    - if: >-
+        $CI_SERVER_HOST == "jugit.fz-juelich.de" &&
+        $CI_COMMIT_BRANCH == "main"
       variables:
         WEBSITE_PUBLIC_PATH: "rse/interactive-software-guidelines"
+    - if: >-
+        $CI_SERVER_HOST == "jugit.fz-juelich.de" &&
+        $CI_COMMIT_BRANCH != "main"
+      variables:
+        WEBSITE_PUBLIC_PATH: "rse/interactive-software-guidelines/${CI_COMMIT_REF_SLUG}"  # yamllint disable-line rule:line-length
 
 pages:
   image: alpine:latest
@@ -114,7 +122,7 @@ pages:
         $CI_SERVER_HOST == "gitlab.jsc.fz-juelich.de" &&
         $CI_PROJECT_ID == $JSC_GITLAB_REPO_ID
 
-deploy_website:
+deploy_website_main:
   stage: deploy
   environment:
     name: apps
@@ -132,10 +140,41 @@ deploy_website:
   script:
     - echo "'${APPS_HOST}'"
     - echo "'${APPS_DIR}'"
-    - rsync -avh --delete-before dist/* ${APPS_HOST}:${APPS_DIR}/
+    - rsync -avh --delete-before dist/ ${APPS_HOST}:${APPS_DIR}/
   rules:
     - if: >-
         $CI_COMMIT_BRANCH == "main" &&
         $CI_SERVER_HOST == "jugit.fz-juelich.de" &&
         $CI_PROJECT_ID == $JUGIT_REPO_ID
       when: on_success
+
+
+deploy_website_other:
+  stage: deploy
+  environment:
+    name: apps
+    url: https://apps.fz-juelich.de/rse/interactive-software-guidelines
+  image: instrumentisto/rsync-ssh
+  dependencies:
+    - build_website
+  before_script:
+    - mkdir -p ~/.ssh
+    - chmod 700 ~/.ssh
+    - echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
+    - echo "${ISG_DEPLOY_KEY}" > ~/.ssh/id_ed25519
+    - chmod 600 ~/.ssh/id_ed25519
+    - ssh-keygen -y -f ~/.ssh/id_ed25519
+  script:
+    - echo "'${APPS_HOST}'"
+    - echo "'${APPS_DIR}'"
+    - echo "'${CI_COMMIT_REF_SLUG}'"
+    - echo "'${APPS_DIR_BRANCH}'"
+    - rsync -avh --delete-before dist/ ${APPS_HOST}:${APPS_DIR_BRANCH}/
+  variables:
+    APPS_DIR_BRANCH: ${APPS_DIR}/${CI_COMMIT_REF_SLUG}
+  rules:
+    - if: >-
+        $CI_COMMIT_BRANCH != "main" &&
+        $CI_SERVER_HOST == "jugit.fz-juelich.de" &&
+        $CI_PROJECT_ID == $JUGIT_REPO_ID
+      when: on_success
diff --git a/README.md b/README.md
index 0dfbf823c2eb91f520dad586cfd139c6fd15155d..6d4b3e427e217ad6be49506d591112d6254864d4 100644
--- a/README.md
+++ b/README.md
@@ -13,9 +13,9 @@ to the software guidelines of the Forschungszentrum Jülich.
 ## Location
 
 This code of this project is located at
-[<gitlab.jsc.fz-juelich.de>](<https://gitlab.jsc.fz-juelich.de/rg-rse/software-guidelines>).
+[<jugit.fz-juelich.de>](<https://jugit.fz-juelich.de/rg-rse/apps-server/interactive-software-guidelines>).
 The created website is located at the
-[apps-server](<https://rg-rse.pages.jsc.fz-juelich.de/rse-monitor/>)
+[apps-server](<https://apps.fz-juelich.de/rse/interactive-software-guidelines/>)
 of Forschungszentrum Jülich.
 
 ## License
diff --git a/public/.htaccess b/public/.htaccess
index 80a42f9935275a794ccf475ea9d5ed10f7d6fe4e..a7749aefecf06925d890655219f8f9ef64503bf9 100644
--- a/public/.htaccess
+++ b/public/.htaccess
@@ -1,7 +1,12 @@
-<ifModule mod_rewrite.c>
-    RewriteEngine On
-    RewriteBase /
-    RewriteCond %{REQUEST_FILENAME} !-f
-    RewriteCond %{REQUEST_FILENAME} !-d
-    RewriteRule (.*) /index.html [QSA,L]
-</ifModule>
\ No newline at end of file
+<IfModule mod_negotiation.c>
+  Options -MultiViews
+</IfModule>
+
+<IfModule mod_rewrite.c>
+  RewriteEngine On
+  RewriteBase /
+  RewriteRule ^index\.html$ - [L]
+  RewriteCond %{REQUEST_FILENAME} !-f
+  RewriteCond %{REQUEST_FILENAME} !-d
+  RewriteRule . 404.html [L]
+</IfModule>
diff --git a/public/404.html b/public/404.html
new file mode 100644
index 0000000000000000000000000000000000000000..bee4d2bd84a0b396aecb4fe1459df6cf59e7a434
--- /dev/null
+++ b/public/404.html
@@ -0,0 +1,52 @@
+<!--
+SPDX-FileCopyrightText: 2023 Forschungszentrum Juelich GmbH
+SPDX-FileContributor: Jakob Fritz <j.fritz@fz-juelich.de>
+
+SPDX-License-Identifier: MIT
+-->
+
+<!DOCTYPE html>
+<html lang="">
+
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width,initial-scale=1.0">
+    <link href='https://apps.fz-juelich.de/fdm/fonts/css.php?family=weissenhof' rel='stylesheet' type='text/css'>
+  <link rel="icon" href="https://fz-juelich.de/favicon.ico" sizes="any">
+  <link rel="icon" href="https://fz-juelich.de/icon.svg" type="image/svg+xml">
+  <link rel="apple-touch-icon" sizes="180x180" href="https://fz-juelich.de/apple-touch-icon.png">
+    <title>Interactive Software Guidelines</title>
+  </head>
+
+  <body>
+      <div
+      id="nav"
+      class="nav"
+    >
+      <a href="index.html" > Home </a> |
+      <a href="determine-class.html" > Determine application class </a> |
+      <a href="check-requirements.html" > Check requirements </a>
+    </div>
+    <div style="align:right">
+      <a
+        href="https://apps.fz-juelich.de/rse/legal-notice"
+        target="_blank"
+        rel="noopener noreferrer"
+      >
+        Legal Notice
+      </a>
+      | <a
+        href="https://www.fz-juelich.de/en/privacy-policy"
+        target="_blank"
+        rel="noopener noreferrer"
+      >Privacy Policy</a>
+    </div>
+    
+    <h1>404 Page not found</h1>
+    <strong>We're sorry but the page you've been looking for is not available.</strong><br>
+    <p>You can go to one of the pages linked above.</p>
+
+  </body>
+
+</html>
\ No newline at end of file
diff --git a/public/index.html b/public/index.html
index 784a41be0c82e223f27a36946c5231200ddaccb6..f7f1eded89512f920e71f7ffdd7a56ef46df3d7b 100644
--- a/public/index.html
+++ b/public/index.html
@@ -20,6 +20,29 @@ SPDX-License-Identifier: MIT
   </head>
 
   <body>
+      <div
+      id="nav"
+      class="nav"
+    >
+      <a href="index.html" > Home </a> |
+      <a href="determine-class.html" > Determine application class </a> |
+      <a href="check-requirements.html" > Check requirements </a>
+    </div>
+    <div style="align:right">
+      <a
+        href="https://apps.fz-juelich.de/rse/legal-notice"
+        target="_blank"
+        rel="noopener noreferrer"
+      >
+        Legal Notice
+      </a>
+      | <a
+        href="https://www.fz-juelich.de/en/privacy-policy"
+        target="_blank"
+        rel="noopener noreferrer"
+      >Privacy Policy</a>
+    </div>
+  
     <noscript>
       <strong>We're sorry but Interactive Software Guidelines doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
     </noscript>
diff --git a/src/App.vue b/src/App.vue
deleted file mode 100644
index 42e06f49efe0c6d3c9af9d3f7dab0f2a764e5d95..0000000000000000000000000000000000000000
--- a/src/App.vue
+++ /dev/null
@@ -1,46 +0,0 @@
-<!--
-SPDX-FileCopyrightText: 2023 Forschungszentrum Juelich GmbH
-SPDX-FileContributor: Jakob Fritz <j.fritz@fz-juelich.de>
-
-SPDX-License-Identifier: MIT
--->
-
-<template>
-  <div
-    id="nav"
-    class="nav"
-  >
-    <router-link to="/">
-      Home
-    </router-link> |
-    <router-link to="/determine-class">
-      Determine application class
-    </router-link> |
-    <router-link to="/check-requirements">
-      Check requirements
-    </router-link>
-  </div>
-  <div style="align:right">
-    <a
-      href="https://apps.fz-juelich.de/rse/legal-notice"
-      target="_blank"
-      rel="noopener noreferrer"
-    >
-      Legal Notice
-    </a>
-    | <a
-      href="https://www.fz-juelich.de/en/privacy-policy"
-      target="_blank"
-      rel="noopener noreferrer"
-    >Privacy Policy</a>
-  </div>
-    
-  <div class="container">
-    <router-view />
-  </div>
-</template>
-
-<script>
-export default {
-}
-</script>
diff --git a/src/main.js b/src/pages/check-requirements.js
similarity index 64%
rename from src/main.js
rename to src/pages/check-requirements.js
index 341ff374bb84e740843463584c25efb35016b07a..b6e4d550318f95dcc7923d8a432d21d4787a1dfe 100644
--- a/src/main.js
+++ b/src/pages/check-requirements.js
@@ -4,10 +4,9 @@
 // SPDX-License-Identifier: CC0-1.0
 
 import { createApp } from 'vue'
-import App from './App.vue'
+import App from './check-requirements.vue'
 import { plugin, defaultConfig } from '@formkit/vue'
 import '@formkit/themes/genesis'
-import "./assets/reset.css"
-import router from '@/router'
+import "../assets/reset.css"
 
-createApp(App).use(router).use(plugin, defaultConfig).mount('#app')
+createApp(App).use(plugin, defaultConfig).mount('#app')
diff --git a/src/views/checkRequirements.vue b/src/pages/check-requirements.vue
similarity index 100%
rename from src/views/checkRequirements.vue
rename to src/pages/check-requirements.vue
diff --git a/src/pages/determine-class.js b/src/pages/determine-class.js
new file mode 100644
index 0000000000000000000000000000000000000000..f2c60fb0228654e96f7031872a35e3359e3a2047
--- /dev/null
+++ b/src/pages/determine-class.js
@@ -0,0 +1,12 @@
+// SPDX-FileCopyrightText: 2023 Forschungszentrum Juelich GmbH
+// SPDX-FileContributor: Jakob Fritz <j.fritz@fz-juelich.de>
+//
+// SPDX-License-Identifier: CC0-1.0
+
+import { createApp } from 'vue'
+import App from './determine-class.vue'
+import { plugin, defaultConfig } from '@formkit/vue'
+import '@formkit/themes/genesis'
+import "../assets/reset.css"
+
+createApp(App).use(plugin, defaultConfig).mount('#app')
diff --git a/src/views/exampleTable.vue b/src/pages/determine-class.vue
similarity index 100%
rename from src/views/exampleTable.vue
rename to src/pages/determine-class.vue
diff --git a/src/pages/index.js b/src/pages/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..60c3f864475a0eb89297b0aaae176496ffacb738
--- /dev/null
+++ b/src/pages/index.js
@@ -0,0 +1,12 @@
+// SPDX-FileCopyrightText: 2023 Forschungszentrum Juelich GmbH
+// SPDX-FileContributor: Jakob Fritz <j.fritz@fz-juelich.de>
+//
+// SPDX-License-Identifier: CC0-1.0
+
+import { createApp } from 'vue'
+import App from './starting-page.vue'
+import { plugin, defaultConfig } from '@formkit/vue'
+import '@formkit/themes/genesis'
+import "../assets/reset.css"
+
+createApp(App).use(plugin, defaultConfig).mount('#app')
diff --git a/src/views/StartingPage.vue b/src/pages/starting-page.vue
similarity index 100%
rename from src/views/StartingPage.vue
rename to src/pages/starting-page.vue
diff --git a/src/router/index.js b/src/router/index.js
deleted file mode 100644
index 5ab348853ebd2d235e4340ba585cd505c51a1d8b..0000000000000000000000000000000000000000
--- a/src/router/index.js
+++ /dev/null
@@ -1,32 +0,0 @@
-// SPDX-FileCopyrightText: 2023 Forschungszentrum Juelich GmbH
-// SPDX-FileContributor: Jakob Fritz <j.fritz@fz-juelich.de>
-//
-// SPDX-License-Identifier: MIT
-
-import { createRouter, createWebHistory } from 'vue-router'
-import exampleTable from '@/views/exampleTable.vue'
-import checkRequirements from '@/views/checkRequirements.vue'
-import home from '@/views/StartingPage.vue'
-
-const routes = [
-  {
-    path: '/',
-    name: 'Home',
-    component: home
-  },
-  {
-    path: '/determine-class',
-    name: 'exampletable',
-    component: exampleTable
-  },
-  {
-    path: '/check-requirements',
-    name: 'checkrequirements',
-    component: checkRequirements
-  }
-]
-const router = createRouter({
-  history: createWebHistory(process.env.BASE_URL),
-  routes
-})
-export default router
\ No newline at end of file
diff --git a/vue.config.js b/vue.config.js
index 23c5bd73acee3066e7eae1c1feb235502a74d6b3..92b17c4c8d2435afbb1596ce893902f2c2b2042e 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -8,5 +8,20 @@ module.exports = defineConfig({
   transpileDependencies: true,
   publicPath: process.env.NODE_ENV === 'production'
   ? '/' + process.env.WEBSITE_PUBLIC_PATH + '/'
-  : '/'
+  : '/',
+  pages: {
+    index: 'src/pages/index.js',
+    'determine-class': 'src/pages/determine-class.js',
+    'check-requirements': 'src/pages/check-requirements.js'
+    // determineClass: {
+    //   entry: 'src/pages/determine-class.js',
+    //   filename: 'determine-class.html',
+    //   title: 'Determine Class'
+    // },
+    // checkRequirements:  {
+    //   entry: 'src/pages/check-requirements.js',
+    //   filename: 'check-requirements.html',
+    //   title: 'Check Requirements'
+    // }
+  }
 })