From aced2d0f5ece55dfdae0b1c0d61f6f25bee660f3 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Mon, 24 Nov 2025 21:48:47 +0000 Subject: [PATCH 1/2] feat: Add i18n support Adds internationalization support for French, German, Italian, Ukrainian, and Hindi. Includes a language switcher and translates all user-facing strings. --- package.json | 4 +- src/App.vue | 43 ++++++++++++++++++--- src/components/Challenges.vue | 72 ++++++++++++++++++----------------- src/components/Countdown.vue | 2 +- src/components/ModalFrame.vue | 6 ++- src/components/Previews.vue | 58 ++++++++++++++-------------- src/locales/de.json | 56 +++++++++++++++++++++++++++ src/locales/en.json | 56 +++++++++++++++++++++++++++ src/locales/fr.json | 56 +++++++++++++++++++++++++++ src/locales/hi.json | 56 +++++++++++++++++++++++++++ src/locales/it.json | 56 +++++++++++++++++++++++++++ src/locales/uk.json | 56 +++++++++++++++++++++++++++ src/main.js | 25 ++++++++++++ yarn.lock | 56 +++++++++++++++++++++++---- 14 files changed, 522 insertions(+), 80 deletions(-) create mode 100644 src/locales/de.json create mode 100644 src/locales/en.json create mode 100644 src/locales/fr.json create mode 100644 src/locales/hi.json create mode 100644 src/locales/it.json create mode 100644 src/locales/uk.json diff --git a/package.json b/package.json index 449a4b0..802639c 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ "dotenv": "^17.2.3", "moment": "^2.30.1", "vue": "^3.5.22", + "vue-i18n": "^11.2.1", "vue-router": "^4.6.3", "vue3-flip-countdown": "^0.1.6", "vue3-markdown-it": "^1.0.10" @@ -27,6 +28,7 @@ "eslint-plugin-vue": "~10.5.0", "globals": "^16.4.0", "vite": "^7.1.11", - "vite-plugin-vue-devtools": "^8.0.3" + "vite-plugin-vue-devtools": "^8.0.3", + "vue-eslint-parser": "^10.2.0" } } diff --git a/src/App.vue b/src/App.vue index 712ecf4..e926272 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,5 +1,16 @@ + + + + {{ languageNames[loc] }} + + + dribdat 🏀 options{{ $t('options') }}