diff --git a/frontend/nuxt.config.ts b/frontend/nuxt.config.ts
index 96b08fdaf71..4d1af0b876b 100644
--- a/frontend/nuxt.config.ts
+++ b/frontend/nuxt.config.ts
@@ -4,7 +4,7 @@ import { isProd } from "./src/utils/node-env"
import locales from "./src/locales/scripts/valid-locales.json"
import { meta as commonMeta } from "./src/constants/meta"
-import type { LocaleObject } from "vue-i18n-routing"
+import type { LocaleObject } from "@nuxtjs/i18n"
const favicons = [
// SVG favicon
diff --git a/frontend/package.json b/frontend/package.json
index 6cdf08abaae..4415d89dc8a 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -63,7 +63,6 @@
"@floating-ui/dom": "^1.5.3",
"@intlify/core-base": "^9.8.0",
"@intlify/message-compiler": "^9.8.0",
- "@nuxtjs/i18n": "^8.0.0",
"@nuxtjs/plausible": "^0.2.4",
"@nuxtjs/sitemap": "^5.0.2",
"@nuxtjs/tailwindcss": "^6.10.3",
@@ -88,6 +87,7 @@
},
"devDependencies": {
"@nuxt/test-utils": "^3.9.0",
+ "@nuxtjs/i18n": "npm:@nuxtjs/i18n-edge@8.0.0-28432155.c9bdcd7",
"@playwright/test": "1.40.1",
"@testing-library/user-event": "^14.5.2",
"@testing-library/vue": "^8.0.1",
diff --git a/frontend/src/app.vue b/frontend/src/app.vue
index 5d73b60d001..23be95d9abd 100644
--- a/frontend/src/app.vue
+++ b/frontend/src/app.vue
@@ -1,18 +1,27 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/components/VHeader/VHeaderInternal.vue b/frontend/src/components/VHeader/VHeaderInternal.vue
index 8f6389c91d3..37ec50e038f 100644
--- a/frontend/src/components/VHeader/VHeaderInternal.vue
+++ b/frontend/src/components/VHeader/VHeaderInternal.vue
@@ -103,7 +103,7 @@ import VPopoverContent from "~/components/VPopover/VPopoverContent.vue"
import VWordPressLink from "~/components/VHeader/VWordPressLink.vue"
import VIconButton from "~/components/VIconButton/VIconButton.vue"
-const emit = defineEmits(["close"])
+const emit = defineEmits(["close", "open"])
const menuButtonRef = ref<{ $el: HTMLElement } | null>(null)
const nodeRef = ref(null)
const modalContentRef = ref<{
diff --git a/frontend/src/components/VHeader/VPageLinks.vue b/frontend/src/components/VHeader/VPageLinks.vue
index 76f804f6fbd..756f447515b 100644
--- a/frontend/src/components/VHeader/VPageLinks.vue
+++ b/frontend/src/components/VHeader/VPageLinks.vue
@@ -7,7 +7,7 @@
>
-
diff --git a/frontend/src/components/VHeader/VWordPressLink.vue b/frontend/src/components/VHeader/VWordPressLink.vue
index c582c1704f5..751f698790e 100644
--- a/frontend/src/components/VHeader/VWordPressLink.vue
+++ b/frontend/src/components/VHeader/VWordPressLink.vue
@@ -17,20 +17,14 @@
-
diff --git a/frontend/src/components/VLanguageSelect/VLanguageSelect.vue b/frontend/src/components/VLanguageSelect/VLanguageSelect.vue
index 6661dff8233..5f4a3b6e21d 100644
--- a/frontend/src/components/VLanguageSelect/VLanguageSelect.vue
+++ b/frontend/src/components/VLanguageSelect/VLanguageSelect.vue
@@ -22,7 +22,7 @@ import VSelectField, {
type Choice,
} from "~/components/VSelectField/VSelectField.vue"
-import type { LocaleObject } from "vue-i18n-routing"
+import type { LocaleObject } from "@nuxtjs/i18n"
/**
* Presents a way for the users to change the app locale and use a translated
diff --git a/frontend/src/components/VSelectField/VSelectField.vue b/frontend/src/components/VSelectField/VSelectField.vue
index f2dac8a5526..e8d8c6176c6 100644
--- a/frontend/src/components/VSelectField/VSelectField.vue
+++ b/frontend/src/components/VSelectField/VSelectField.vue
@@ -11,7 +11,7 @@