diff --git a/core/installer/Makefile b/core/installer/Makefile
index f28ca84..ce9c184 100644
--- a/core/installer/Makefile
+++ b/core/installer/Makefile
@@ -35,7 +35,7 @@
 	./pcloud --kubeconfig=../../priv/kubeconfig install --ssh-key=/Users/lekva/.ssh/id_rsa --app=rpuppy --repo-addr=ssh://localhost:2222/lekva
 
 appmanager:
-	./pcloud --kubeconfig=../../priv/kubeconfig-hetzner appmanager --ssh-key=/Users/tabo/.ssh/id_rsa --repo-addr=ssh://10.43.196.174/config --port=9090 # --app-repo-addr=http://localhost:8080
+	./pcloud --kubeconfig=../../priv/kubeconfig-hetzner appmanager --ssh-key=/Users/lekva/.ssh/id_ed25519 --repo-addr=ssh://localhost:2222/config --port=9090 # --app-repo-addr=http://localhost:8080
 
 dodo-app:
 	./pcloud --kubeconfig=../../priv/kubeconfig-hetzner dodo-app --ssh-key=/Users/lekva/.ssh/id_ed25519 --repo-addr=ssh://localhost:2222/test
diff --git a/core/installer/welcome/appmanager-tmpl/base.html b/core/installer/welcome/appmanager-tmpl/base.html
index a7c7aaa..e119c0f 100644
--- a/core/installer/welcome/appmanager-tmpl/base.html
+++ b/core/installer/welcome/appmanager-tmpl/base.html
@@ -12,7 +12,7 @@
       </header>
       <main class="container page-index">
           <aside id="menu-nav">
-            <nav class="is-sticky-above-lg" style="--max-height: 800px;">
+            <nav id="menu" class="is-sticky-above-lg">
                 <ul>
                   <li><a href="/" class="{{ if (eq .CurrentPage "ALL") }}outline{{ else }}secondary{{ end }}">All</a></li>
                   <li><a href="/installed" class="{{ if (eq .CurrentPage "INSTALLED") }}outline{{ else }}secondary{{ end }}">Installed</a></li>
@@ -26,5 +26,6 @@
 			  {{ block "content" . }}{{ end }}
 		  </div>
       </main>
+    <script src="/static/app-manager.js"></script>
 	</body>
 </html>
diff --git a/core/installer/welcome/static/app-manager.js b/core/installer/welcome/static/app-manager.js
new file mode 100644
index 0000000..ff10c1b
--- /dev/null
+++ b/core/installer/welcome/static/app-manager.js
@@ -0,0 +1,21 @@
+document.addEventListener("DOMContentLoaded", function () {
+    const page = document.documentElement;
+    const headerHeight = parseFloat(getComputedStyle(page).getPropertyValue('--pico-header-height').replace("px", ""));
+    const nav = document.getElementById("menu");
+    const windowHeight = window.innerHeight - headerHeight;
+    nav.style.setProperty("--max-height", `${windowHeight}px`);
+});
+
+let prevWindowHeight = window.innerHeight;
+
+window.addEventListener("resize", function () {
+    const nav = document.getElementById("menu");
+    const windowHeight = window.innerHeight;
+    const heightDiff = prevWindowHeight - windowHeight;
+    const currentMaxHeight = parseFloat(nav.style.getPropertyValue("--max-height").replace("px", ""));
+    if (!isNaN(currentMaxHeight)) {
+        const newMaxHeight = currentMaxHeight - heightDiff;
+        nav.style.setProperty("--max-height", `${newMaxHeight}px`);
+    }
+    prevWindowHeight = windowHeight;
+});
diff --git a/core/installer/welcome/static/appmanager.css b/core/installer/welcome/static/appmanager.css
index 0a6842c..3f406fa 100644
--- a/core/installer/welcome/static/appmanager.css
+++ b/core/installer/welcome/static/appmanager.css
@@ -1,215 +1,222 @@
-@media screen and (min-width:801px) {
-    #main {
-        width: 600px;
-    }
+@media screen and (min-width: 801px) {
+  #main {
+    width: 600px;
+  }
 }
 
 article {
-    margin: 0.3em;
-    margin-bottom: 0.3em;
-    display: flex;
-    padding: 6px !important;
-    position: relative;
-    align-items: flex-start;
+  margin: 0.3em;
+  margin-bottom: 0.3em;
+  display: flex;
+  padding: 6px !important;
+  position: relative;
+  align-items: flex-start;
 }
 
 .icon {
-    margin-right: 10px;
-    flex-shrink: 0;
+  margin-right: 10px;
+  flex-shrink: 0;
 }
 
 .app-details {
-    display: flex;
-    flex-direction: column;
-    flex-grow: 1;
-    position: relative;
+  display: flex;
+  flex-direction: column;
+  flex-grow: 1;
+  position: relative;
 }
 
 .app-name-container {
-    display: flex;
-    align-items: center;
-    justify-content: space-between;
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
 }
 
 .app {
-    margin-bottom: 2px;
-    margin-top: 0px;
-    margin-left: 5px;
+  margin-bottom: 2px;
+  margin-top: 0px;
+  margin-left: 5px;
 }
 
 .description {
-    --pico-color: var(--pico-secondary);
-    font-size: medium;
-    margin-bottom: 3px;
-    margin-left: 5px;
-    text-decoration: none !important;
+  --pico-color: var(--pico-secondary);
+  font-size: medium;
+  margin-bottom: 3px;
+  margin-left: 5px;
+  text-decoration: none !important;
 }
 
 .app-link:hover .app {
-    text-decoration: underline;
+  text-decoration: underline;
 }
 
 .instance-count {
-    display: flex;
-    justify-content: center;
-    align-items: center;
-    width: 24px;
-    height: 24px;
-    border-radius: 50%;
-    background-color: white;
-    color: var(--pico-color);
-    font-size: 16px;
-    font-weight: bold;
-    border: 2px solid var(--pico-color);
-    position: absolute;
-    top: 14px;
-    right: 11px;
-    transform: translate(50%, -50%);
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  width: 24px;
+  height: 24px;
+  border-radius: 50%;
+  background-color: white;
+  color: var(--pico-color);
+  font-size: 16px;
+  font-weight: bold;
+  border: 2px solid var(--pico-color);
+  position: absolute;
+  top: 14px;
+  right: 11px;
+  transform: translate(50%, -50%);
 }
 
 pre {
-    white-space: pre-wrap;       /* Since CSS 2.1 */
-    white-space: -moz-pre-wrap;  /* Mozilla, since 1999 */
-    white-space: -pre-wrap;      /* Opera 4-6 */
-    white-space: -o-pre-wrap;    /* Opera 7 */
-    word-wrap: break-word;       /* Internet Explorer 5.5+ */
-    background-color: transparent;
+  white-space: pre-wrap;
+  /* Since CSS 2.1 */
+  white-space: -moz-pre-wrap;
+  /* Mozilla, since 1999 */
+  white-space: -pre-wrap;
+  /* Opera 4-6 */
+  white-space: -o-pre-wrap;
+  /* Opera 7 */
+  word-wrap: break-word;
+  /* Internet Explorer 5.5+ */
+  background-color: transparent;
 }
 
 .hidden {
-    visibility: hidden;
+  visibility: hidden;
 }
 
 .toast {
-    position: fixed;
-    z-index: 999;
-    bottom: 10px;
+  position: fixed;
+  z-index: 999;
+  bottom: 10px;
 }
 
 .app-link {
-    padding-top: 0px;
-    padding-bottom: 2px;
-    text-decoration: none;
+  padding-top: 0px;
+  padding-bottom: 2px;
+  text-decoration: none;
 }
 
 nav li {
-    padding-top: 0;
-    padding-bottom: 0;
+  padding-top: 0;
+  padding-bottom: 0;
 }
 
 input[type="search"] {
-    margin-bottom: 0;
+  margin-bottom: 0;
 }
 
 .page {
-    display: flex;
-    align-items: center;
-    flex-direction: column;
+  display: flex;
+  align-items: center;
+  flex-direction: column;
 }
 
 .search-bar {
-    max-width: 616px;
-    min-width: 500px;
+  max-width: 616px;
+  min-width: 500px;
 }
 
 .card-content {
-    width: 100%;
+  width: 100%;
 }
 
 .app-card {
-    margin-bottom: 6px;
+  margin-bottom: 6px;
 }
 
 header {
-    height: 80px !important;
-    display: flex;
-    align-items: center;
-    justify-content: center;
+  height: 80px !important;
+  display: flex;
+  align-items: center;
+  justify-content: center;
 }
 
 header > h1 {
-    margin-bottom: 0px;
+  margin-bottom: 0px;
 }
 
 nav {
-    height: 100%;
+  height: 100%;
 }
 
 #config-form label {
-    width: auto !important;
+  width: auto !important;
 }
 
 html {
-    overflow-x: hidden;
-    scroll-behavior: smooth;
+  scroll-behavior: smooth;
+  --pico-header-height: 80px;
 }
 
-body {
-    --pico-main-top-offset: 0rem;
+body > header.is-fixed-above-lg + main {
+  --pico-main-top-offset: var(--pico-header-height);
 }
 
-body>header.is-fixed-above-lg {
-    z-index: 2;
-    position: sticky;
-    top: 0;
-    -webkit-backdrop-filter: blur(1rem);
-    backdrop-filter: blur(1rem);
-    background-color: var(--pico-header-background);
-    transition: border-top-color .4s ease-in-out,box-shadow .4s ease-in-out;
+body > header.is-fixed-above-lg {
+  z-index: 2;
+  position: sticky;
+  top: 0;
+  -webkit-backdrop-filter: blur(1rem);
+  backdrop-filter: blur(1rem);
+  background-color: var(--pico-header-background);
+  transition: border-top-color 0.4s ease-in-out, box-shadow 0.4s ease-in-out;
 }
 
-body>header.is-fixed-above-lg.is-fixed {
-    border-bottom-color: var(--pico-header-border-color);
-    box-shadow: var(--pico-card-box-shadow);
+body > header.is-fixed-above-lg.is-fixed {
+  border-bottom-color: var(--pico-header-border-color);
+  box-shadow: var(--pico-card-box-shadow);
 }
 
-body>header {
-    z-index: 4;
-    position: relative;
-    padding: .5rem 0;
-    border-bottom: var(--pico-border-width) solid transparent;
+body > header {
+  z-index: 4;
+  position: relative;
+  padding: 0.5rem 0;
+  border-bottom: var(--pico-border-width) solid transparent;
 }
 
-body>main {
-    display: grid;
-    grid-template-rows: auto auto 1fr;
-    grid-template-columns: 11rem 1fr;
-    grid-template-areas: "menu content";
-	column-gap: 2rem;
-
-    margin-top: 1rem;
-	padding: 0;
+body > main {
+  display: grid;
+  grid-template-rows: auto auto 1fr;
+  grid-template-columns: 11rem 1fr;
+  grid-template-areas: "menu content";
+  column-gap: 2rem;
+  margin-top: 1rem;
+  padding: 0;
 }
 
 #menu-nav {
-    grid-area: menu;
+  grid-area: menu;
 }
 
 #content {
-	grid-area: content;
+  grid-area: content;
 }
 
-main>aside {
-    --pico-font-size: 16px;
-    font-size: var(--pico-font-size);
+main > aside {
+  --pico-font-size: 16px;
+  font-size: var(--pico-font-size);
 }
 
-body>main>aside>nav.is-sticky-above-lg {
-    position: sticky;
-    top: calc(var(--pico-main-top-offset) + var(--pico-block-spacing-vertical)/ 2);
-    max-height: calc(var(--max-height) - var(--pico-spacing));
-    overflow: auto;
-    transition: top var(--pico-transition);
-    transition-delay: 50ms;
+body > main > aside > nav.is-sticky-above-lg {
+  position: sticky;
+  top: calc(
+    var(--pico-main-top-offset) + var(--pico-block-spacing-vertical) / 2
+  );
+  max-height: calc(var(--max-height) - var(--pico-spacing));
+  overflow: auto;
+  transition: top var(--pico-transition);
+  transition-delay: 50ms;
 }
 
-main>aside#menu-nav nav {
-    margin-bottom: var(--pico-spacing);
-    margin-block:calc(var(--pico-outline-width) * -1);padding-block: var(--pico-outline-width);
-    overflow: auto;
+main > aside#menu-nav nav {
+  margin-bottom: var(--pico-spacing);
+  margin-block: calc(var(--pico-outline-width) * -1);
+  padding-block: var(--pico-outline-width);
+  overflow: auto;
 }
 
 #menu-nav nav ul:first-of-type {
-    margin: 0;
-    padding: 0;
+  margin: 0;
+  padding: 0;
 }
