diff --git a/website/src/article-vew-components/game-article.js b/website/src/article-vew-components/game-article.js
index ac0e379a80e31f54ed3f0af4faa3a7285d83abf0..94cf298421435785b2af3da1ddce0f98f702a169 100644
--- a/website/src/article-vew-components/game-article.js
+++ b/website/src/article-vew-components/game-article.js
@@ -4,9 +4,7 @@ const ImageCarousel = require("../generic-components/image-carousel");
 const { getArticleBody } = require("../lib/article-utils");
 const { fetch_json_or_error_text } = require("../lib/fetch");
 const { MentaloEngine } = require("mentalo-engine");
-const translator = require("ks-cheap-translator");
 const { images_url, data_url } = require("../../constants");
-const t = translator.trad.bind(translator);
 
 
 class GameArticle {
diff --git a/website/src/article-vew-components/software-article.js b/website/src/article-vew-components/software-article.js
index dab32ac33ef32ca998a693075df80155e8e0e618..0170cba1e127fed4a4ad5d3b82b8f83dd28e9895 100644
--- a/website/src/article-vew-components/software-article.js
+++ b/website/src/article-vew-components/software-article.js
@@ -1,10 +1,8 @@
 "use strict";
 
 const ImageCarousel = require("../generic-components/image-carousel");
-const translator = require("ks-cheap-translator");
 const { images_url } = require("../../constants");
 const { getArticleBody } = require("../lib/article-utils");
-const t = translator.trad.bind(translator);
 
 
 class SoftwareArticle {
diff --git a/website/src/homepage.js b/website/src/homepage.js
index fc03455a6459c93081dd6ac05451ed7dd4bac995..3aff6801fd4b7b81c90ddbe84413f1e26531c9d8 100644
--- a/website/src/homepage.js
+++ b/website/src/homepage.js
@@ -3,8 +3,6 @@
 const { images_url } = require("../constants");
 const ThemeCard = require("./home-page-components/theme-card");
 const WebPage = require("./lib/web-page");
-const translator = require("ks-cheap-translator");
-const t = translator.trad.bind(translator);
 
 class HomePage extends WebPage {
     constructor() {
diff --git a/website/src/lib/web-page.js b/website/src/lib/web-page.js
index 5324d202253cadfd2b7337ef5e1b496ce4ece5e3..b4971265559d8475e34138a0dd59ec35a9089633 100644
--- a/website/src/lib/web-page.js
+++ b/website/src/lib/web-page.js
@@ -12,6 +12,9 @@ class WebPage {
 
         this.translations_ready = false;
 
+        window.t = translator.trad.bind(translator);
+        window.translator = translator;
+
         translator.init({
             translations_url,
             supported_languages: ["fr", "en"],
diff --git a/website/src/pages/education/components/edu-articles.js b/website/src/pages/education/components/edu-articles.js
index c3b41b39069d483540c4c227308edc230e3bd729..fcf909208a0fd48b0972396b4da451cb0f0de518 100644
--- a/website/src/pages/education/components/edu-articles.js
+++ b/website/src/pages/education/components/edu-articles.js
@@ -1,7 +1,5 @@
 "use strict";
 const { loadArticles, sortArticles, renderPlaceholders } = require("../../../lib/article-utils");
-const translator = require("ks-cheap-translator");
-const t = translator.trad.bind(translator);
 const EduArticle = require("./edu-article");
 
 class EduArticles {
diff --git a/website/src/pages/education/education.js b/website/src/pages/education/education.js
index ea04c92fc6a77ecb5ca8fae6357eb96702481daa..2f9f80a1af83b7f009c029e62aa326a57addf789 100644
--- a/website/src/pages/education/education.js
+++ b/website/src/pages/education/education.js
@@ -2,9 +2,7 @@
 
 const { images_url } = require("../../../constants");
 const WebPage = require("../../lib/web-page");
-const translator = require("ks-cheap-translator");
 const EduArticles = require("./components/edu-articles");
-const t = translator.trad.bind(translator);
 
 const EDU_THEMES = [
     {
diff --git a/website/src/pages/games/components/game-articles.js b/website/src/pages/games/components/game-articles.js
index 4f4ced68750f01f17f7ff191253eaed3fc77f927..fa267336b690e53eec5f86bf8782f32afba30533 100644
--- a/website/src/pages/games/components/game-articles.js
+++ b/website/src/pages/games/components/game-articles.js
@@ -6,7 +6,6 @@ const {
     renderPlaceholders
 } = require("../../../lib/article-utils");
 const GameThumb = require("./game-thumb");
-const translator = require("ks-cheap-translator");
 
 class GameArticles {
     constructor(props) {
diff --git a/website/src/pages/games/games.js b/website/src/pages/games/games.js
index ed627df8c27bc71aa11d9cb06da9aecd39e5f100..0efb4d587d66e8aec452c078f9d7fbefa6084c5c 100644
--- a/website/src/pages/games/games.js
+++ b/website/src/pages/games/games.js
@@ -3,8 +3,6 @@
 const { images_url } = require("../../../constants");
 const WebPage = require("../../lib/web-page");
 const GameArticles = require("./components/game-articles");
-const translator = require("ks-cheap-translator");
-const t = translator.trad.bind(translator);
 
 class GamesPage extends WebPage {
     render() {
diff --git a/website/src/pages/software-development/components/software-articles.js b/website/src/pages/software-development/components/software-articles.js
index 36a5a0476909284479a60079a51753a1dc417f3c..43219c00af7d5727808840d8f70239eac821fb87 100644
--- a/website/src/pages/software-development/components/software-articles.js
+++ b/website/src/pages/software-development/components/software-articles.js
@@ -2,7 +2,6 @@
 
 const { loadArticles, sortArticles, renderPlaceholders } = require("../../../lib/article-utils");
 const SoftwareThumb = require("./software-thumb");
-const translator = require("ks-cheap-translator");
 
 class SoftwareArticles {
     constructor(props) {
diff --git a/website/src/pages/software-development/software-development.js b/website/src/pages/software-development/software-development.js
index a74945d9f111226776b7d4a8af4d16344f476ac1..f41a096b5fe3e9bdb97375baccef3b1cf18f55b9 100644
--- a/website/src/pages/software-development/software-development.js
+++ b/website/src/pages/software-development/software-development.js
@@ -3,8 +3,6 @@
 const { images_url } = require("../../../constants");
 const WebPage = require("../../lib/web-page");
 const SoftwareArticles = require("./components/software-articles");
-const translator = require("ks-cheap-translator");
-const t = translator.trad.bind(translator);
 
 class SoftwareDevelopment extends WebPage {
     render() {
diff --git a/website/src/template/components/navbar.js b/website/src/template/components/navbar.js
index 74c88f187ca79d0e74af6f5cf8c2859a15ef04f7..2f3bf62e7f02c93f7f97c9990d17b85ea2611f12 100644
--- a/website/src/template/components/navbar.js
+++ b/website/src/template/components/navbar.js
@@ -1,8 +1,6 @@
 "use strict";
 
 const { images_url } = require("../../../constants");
-const translator = require("ks-cheap-translator");
-const t = translator.trad.bind(translator);
 
 const NAV_MENU_ITEMS = [
     { url: "/games/", text: "Jeux" },
@@ -34,10 +32,15 @@ class NavBar {
         });
     }
 
-    handle_chang_lang(lang) {
-        translator.update_translations(lang).then(() => {
-            obj2htm.renderCycle();
-        }).catch(err => console.log(err));
+    handle_change_lang(lang) {
+        const url_path_chunks = location.pathname.split("/");
+        const location_contains_locale = translator.supported_languages.find(locale => url_path_chunks.includes(locale));
+        const callback = location_contains_locale
+            ? function () {
+                location.pathname = url_path_chunks.map(chunk => chunk === location_contains_locale ? lang : chunk).join("/");
+            }
+            : obj2htm.renderCycle.bind(obj2htm);
+        translator.update_translations(lang).then(callback).catch(err => console.log(err));
     }
 
     renderHome() {
@@ -92,7 +95,7 @@ class NavBar {
                     return {
                         tag: "img", src: `${images_url}/flag-${lang}.svg`,
                         class: translator.locale === lang ? "selected" : "",
-                        onclick: this.handle_chang_lang.bind(this, lang)
+                        onclick: this.handle_change_lang.bind(this, lang)
                     }
                 })
             }),
diff --git a/website/src/template/template.js b/website/src/template/template.js
index e1cee3c4f6b7d0108eeeb6ec4c25cc456fa86207..cf3fbc1b914c1a91216428fb6b8ea31f61d2b2c4 100644
--- a/website/src/template/template.js
+++ b/website/src/template/template.js
@@ -3,8 +3,6 @@
 const { in_construction } = require("../../config");
 const { images_url } = require("../../constants");
 const NavBar = require("./components/navbar");
-const translator = require("ks-cheap-translator");
-const t = translator.trad.bind(translator)
 
 class Template {
     constructor(props) {
@@ -79,7 +77,7 @@ class Template {
                                 },
                                 {
                                     tag: "a",
-                                    href: "https://www.linkedin.com/company/kuadrado-software",
+                                    href: "https://linkedin.com/company/kuadrado-software",
                                     target: "_blank",
                                     contents: "in",
                                     title: "Linkedin",
@@ -105,7 +103,7 @@ class Template {
                                 {
                                     tag: "a", target: "_blank",
                                     style_rules: { fontWeight: "bold" },
-                                    href: "https://gitlab.com/kuadrado-software/kuadrado-website/-/blob/master/README.md",
+                                    href: "https://lab.frogg.it/kuadrado-software/kuadrado-website/-/blob/master/README.md",
                                     contents: "OPEN SOURCE"
                                 }
                             ]