diff --git a/.nvmrc b/.nvmrc
index 2b9cabc..ee3b424 100644
--- a/.nvmrc
+++ b/.nvmrc
@@ -1 +1 @@
-20.12.0
+24.4.0
diff --git a/app.vue b/app/app.vue
similarity index 100%
rename from app.vue
rename to app/app.vue
diff --git a/assets/_colors.css b/app/assets/_colors.css
similarity index 100%
rename from assets/_colors.css
rename to app/assets/_colors.css
diff --git a/assets/_content.css b/app/assets/_content.css
similarity index 100%
rename from assets/_content.css
rename to app/assets/_content.css
diff --git a/assets/_typography.css b/app/assets/_typography.css
similarity index 100%
rename from assets/_typography.css
rename to app/assets/_typography.css
diff --git a/assets/main.css b/app/assets/main.css
similarity index 96%
rename from assets/main.css
rename to app/assets/main.css
index 14b2187..97c64d7 100644
--- a/assets/main.css
+++ b/app/assets/main.css
@@ -1,6 +1,6 @@
@import 'tailwindcss';
-@config '../tailwind.config.js';
+@config '../../tailwind.config.js';
@import "./theme.css" layer(theme);
@import "./_typography.css" layer(theme);
diff --git a/assets/theme.css b/app/assets/theme.css
similarity index 100%
rename from assets/theme.css
rename to app/assets/theme.css
diff --git a/components/calendar/Calendar.vue b/app/components/calendar/Calendar.vue
similarity index 96%
rename from components/calendar/Calendar.vue
rename to app/components/calendar/Calendar.vue
index c221ca9..8e4e5f9 100644
--- a/components/calendar/Calendar.vue
+++ b/app/components/calendar/Calendar.vue
@@ -1,5 +1,5 @@
diff --git a/components/ui/dialog/DialogHeader.vue b/app/components/ui/dialog/DialogHeader.vue
similarity index 89%
rename from components/ui/dialog/DialogHeader.vue
rename to app/components/ui/dialog/DialogHeader.vue
index 717e9aa..ee1b66a 100644
--- a/components/ui/dialog/DialogHeader.vue
+++ b/app/components/ui/dialog/DialogHeader.vue
@@ -1,6 +1,6 @@
diff --git a/components/ui/select/SelectScrollDownButton.vue b/app/components/ui/select/SelectScrollDownButton.vue
similarity index 95%
rename from components/ui/select/SelectScrollDownButton.vue
rename to app/components/ui/select/SelectScrollDownButton.vue
index 1fd6014..9342373 100644
--- a/components/ui/select/SelectScrollDownButton.vue
+++ b/app/components/ui/select/SelectScrollDownButton.vue
@@ -5,7 +5,7 @@ import {
type SelectScrollDownButtonProps,
useForwardProps
} from "radix-vue"
-import { cn } from "~/lib/utils"
+import { cn } from "@/lib/utils"
import { PhCaretDown } from "@phosphor-icons/vue";
const props = defineProps()
diff --git a/components/ui/select/SelectScrollUpButton.vue b/app/components/ui/select/SelectScrollUpButton.vue
similarity index 95%
rename from components/ui/select/SelectScrollUpButton.vue
rename to app/components/ui/select/SelectScrollUpButton.vue
index 9d93db9..924297c 100644
--- a/components/ui/select/SelectScrollUpButton.vue
+++ b/app/components/ui/select/SelectScrollUpButton.vue
@@ -1,7 +1,7 @@