diff --git a/client/i18n/locales/chinese-traditional/intro.json b/client/i18n/locales/chinese-traditional/intro.json
index 25189e989d3..d0a4d19743c 100644
--- a/client/i18n/locales/chinese-traditional/intro.json
+++ b/client/i18n/locales/chinese-traditional/intro.json
@@ -4780,6 +4780,12 @@
"循環是 JavaScript 的核心部分。因此以下講座將幫助你學習不同類型的循環及其工作原理,以及迭代的運作方式。"
]
},
+ "workshop-word-counter": {
+ "title": "Build a Word Counter",
+ "intro": [
+ "In this workshop, you will practice using for...of loops by building a function that counts the occurrences of a string in an array of strings."
+ ]
+ },
"workshop-sentence-analyzer": {
"title": "創建一個句子分析程序",
"intro": [
@@ -4970,6 +4976,13 @@
"在本實驗中,你將創建一個函數,根據指定的步長值跳過數組中的元素。"
]
},
+ "lab-playlist-remix-engine": {
+ "title": "Build a Playlist Remix Engine",
+ "intro": [
+ "In this lab, you will build a Playlist Remix Engine using JavaScript arrays.",
+ "You will apply array methods and logic to transform data and generate a final remix schedule."
+ ]
+ },
"review-javascript-fundamentals": {
"title": "JavaScript 基礎複習",
"intro": [
@@ -6140,6 +6153,12 @@
"In this workshop, you will continue to practice working with TypeScript by building a fortune telling app."
]
},
+ "lab-flashcard-quiz-app": {
+ "title": "Build a Flashcard Quiz App",
+ "intro": [
+ "In this lab, you will practice using TypeScript by building a flashcard quiz app."
+ ]
+ },
"review-typescript": {
"title": "Typescript Review",
"intro": [
@@ -7454,6 +7473,10 @@
"es-a1-quiz-describing-people-at-work": {
"title": "Describing People at Work",
"intro": ["", ""]
+ },
+ "es-a1-learn-talking-about-colleagues": {
+ "title": "Talking About Colleagues",
+ "intro": ["", ""]
}
}
},
diff --git a/client/i18n/locales/chinese-traditional/translations.json b/client/i18n/locales/chinese-traditional/translations.json
index a2ab1aff718..c404c2d6788 100644
--- a/client/i18n/locales/chinese-traditional/translations.json
+++ b/client/i18n/locales/chinese-traditional/translations.json
@@ -339,6 +339,7 @@
"keyboard-shortcuts": "啓用鍵盤快捷鍵"
},
"headings": {
+ "personal": "Personal",
"account": "賬戶",
"certs": "認證",
"legacy-certs": "舊版認證",
@@ -469,13 +470,16 @@
},
"completeness": {
"heading": "個人資料完成 {{percentage}}%",
+ "title": "Profile Completion",
+ "progress": "{{percentage}}% complete",
"name": "添加你的姓名",
"location": "添加你的地點",
"picture": "上傳頭像",
"about": "填寫個人簡介",
"social": "添加社交鏈接",
"portfolio": "添加作品集項目",
- "experience": "添加你的經歷"
+ "experience": "添加你的經歷",
+ "privacy": "Make your profile public"
}
},
"footer": {
@@ -1027,6 +1031,10 @@
"rsa-checkbox": "我已經嘗試了 Read-Search-Ask(閱讀-搜索-提問)方法",
"similar-questions-checkbox": "我已經在論壇上搜索了類似的問題和相應的答案",
"edit-my-profile": "編輯我的個人資料",
+ "add-portfolio": "Add portfolio project",
+ "edit-portfolio": "Edit portfolio project",
+ "add-experience": "Add experience",
+ "edit-experience": "Edit experience",
"editor-a11y-off-macos": "{{editorName}} 編輯器內容。按 Option+F1 設置無障礙選項。",
"editor-a11y-off-non-macos": "{{editorName}} 編輯器內容。按 Alt+F1 設置無障礙選項。",
"editor-a11y-on-macos": "{{editorName}} 編輯器模式。無障礙模式被設置爲 “on”。按 Command+E 關閉或按 Option+F1 查看更多選項。",
diff --git a/client/i18n/locales/chinese/intro.json b/client/i18n/locales/chinese/intro.json
index 762b712c1dd..c7ad4512b4c 100644
--- a/client/i18n/locales/chinese/intro.json
+++ b/client/i18n/locales/chinese/intro.json
@@ -4780,6 +4780,12 @@
"循环是 JavaScript 的核心部分。因此以下讲座将帮助你学习不同类型的循环及其工作原理,以及迭代的运作方式。"
]
},
+ "workshop-word-counter": {
+ "title": "Build a Word Counter",
+ "intro": [
+ "In this workshop, you will practice using for...of loops by building a function that counts the occurrences of a string in an array of strings."
+ ]
+ },
"workshop-sentence-analyzer": {
"title": "创建一个句子分析程序",
"intro": [
@@ -4970,6 +4976,13 @@
"在本实验中,你将创建一个函数,根据指定的步长值跳过数组中的元素。"
]
},
+ "lab-playlist-remix-engine": {
+ "title": "Build a Playlist Remix Engine",
+ "intro": [
+ "In this lab, you will build a Playlist Remix Engine using JavaScript arrays.",
+ "You will apply array methods and logic to transform data and generate a final remix schedule."
+ ]
+ },
"review-javascript-fundamentals": {
"title": "JavaScript 基础复习",
"intro": [
@@ -6140,6 +6153,12 @@
"In this workshop, you will continue to practice working with TypeScript by building a fortune telling app."
]
},
+ "lab-flashcard-quiz-app": {
+ "title": "Build a Flashcard Quiz App",
+ "intro": [
+ "In this lab, you will practice using TypeScript by building a flashcard quiz app."
+ ]
+ },
"review-typescript": {
"title": "Typescript Review",
"intro": [
@@ -7454,6 +7473,10 @@
"es-a1-quiz-describing-people-at-work": {
"title": "Describing People at Work",
"intro": ["", ""]
+ },
+ "es-a1-learn-talking-about-colleagues": {
+ "title": "Talking About Colleagues",
+ "intro": ["", ""]
}
}
},
diff --git a/client/i18n/locales/chinese/translations.json b/client/i18n/locales/chinese/translations.json
index 6423c27a855..ef6730808df 100644
--- a/client/i18n/locales/chinese/translations.json
+++ b/client/i18n/locales/chinese/translations.json
@@ -339,6 +339,7 @@
"keyboard-shortcuts": "启用键盘快捷键"
},
"headings": {
+ "personal": "Personal",
"account": "账户",
"certs": "认证",
"legacy-certs": "旧版认证",
@@ -469,13 +470,16 @@
},
"completeness": {
"heading": "个人资料完成 {{percentage}}%",
+ "title": "Profile Completion",
+ "progress": "{{percentage}}% complete",
"name": "添加你的姓名",
"location": "添加你的地点",
"picture": "上传头像",
"about": "填写个人简介",
"social": "添加社交链接",
"portfolio": "添加作品集项目",
- "experience": "添加你的经历"
+ "experience": "添加你的经历",
+ "privacy": "Make your profile public"
}
},
"footer": {
@@ -1027,6 +1031,10 @@
"rsa-checkbox": "我已经尝试了 Read-Search-Ask(阅读-搜索-提问)方法",
"similar-questions-checkbox": "我已经在论坛上搜索了类似的问题和相应的答案",
"edit-my-profile": "编辑我的个人资料",
+ "add-portfolio": "Add portfolio project",
+ "edit-portfolio": "Edit portfolio project",
+ "add-experience": "Add experience",
+ "edit-experience": "Edit experience",
"editor-a11y-off-macos": "{{editorName}} 编辑器内容。按 Option+F1 设置无障碍选项。",
"editor-a11y-off-non-macos": "{{editorName}} 编辑器内容。按 Alt+F1 设置无障碍选项。",
"editor-a11y-on-macos": "{{editorName}} 编辑器模式。无障碍模式被设置为 “on”。按 Command+E 关闭或按 Option+F1 查看更多选项。",
diff --git a/client/i18n/locales/espanol/intro.json b/client/i18n/locales/espanol/intro.json
index 35214edf438..e1906c14f33 100644
--- a/client/i18n/locales/espanol/intro.json
+++ b/client/i18n/locales/espanol/intro.json
@@ -4868,6 +4868,12 @@
"Los bucles son una parte esencial de JavaScript. Por eso, se han preparado las siguientes lecciones para que aprendas sobre los diferentes tipos de bucles y cómo funcionan, así como cómo funciona la iteración."
]
},
+ "workshop-word-counter": {
+ "title": "Build a Word Counter",
+ "intro": [
+ "In this workshop, you will practice using for...of loops by building a function that counts the occurrences of a string in an array of strings."
+ ]
+ },
"workshop-sentence-analyzer": {
"title": "Construir un Analizador de Oraciones.",
"intro": [
@@ -5078,6 +5084,13 @@
"En este laboratorio crearás una función que omita elementos en un arreglo basado en un valor de paso especificado."
]
},
+ "lab-playlist-remix-engine": {
+ "title": "Build a Playlist Remix Engine",
+ "intro": [
+ "In this lab, you will build a Playlist Remix Engine using JavaScript arrays.",
+ "You will apply array methods and logic to transform data and generate a final remix schedule."
+ ]
+ },
"review-javascript-fundamentals": {
"title": "Revisión de Fundamentos de JavaScript.",
"intro": [
@@ -6270,6 +6283,12 @@
"In this workshop, you will continue to practice working with TypeScript by building a fortune telling app."
]
},
+ "lab-flashcard-quiz-app": {
+ "title": "Build a Flashcard Quiz App",
+ "intro": [
+ "In this lab, you will practice using TypeScript by building a flashcard quiz app."
+ ]
+ },
"review-typescript": {
"title": "Revisión de TypeScript",
"intro": [
@@ -7602,6 +7621,10 @@
"es-a1-quiz-describing-people-at-work": {
"title": "Describir personas en el trabajo.",
"intro": ["", ""]
+ },
+ "es-a1-learn-talking-about-colleagues": {
+ "title": "Talking About Colleagues",
+ "intro": ["", ""]
}
}
},
diff --git a/client/i18n/locales/espanol/translations.json b/client/i18n/locales/espanol/translations.json
index 77249099643..c20e0cdb335 100644
--- a/client/i18n/locales/espanol/translations.json
+++ b/client/i18n/locales/espanol/translations.json
@@ -339,6 +339,7 @@
"keyboard-shortcuts": "Habilitar atajos de teclado"
},
"headings": {
+ "personal": "Personal",
"account": "Cuenta",
"certs": "Certificaciones",
"legacy-certs": "Certificaciones de legado",
@@ -469,13 +470,16 @@
},
"completeness": {
"heading": "Perfil {{percentage}}% completo",
+ "title": "Profile Completion",
+ "progress": "{{percentage}}% complete",
"name": "Agrega tu nombre",
"location": "Agrega tu ubicación",
"picture": "Sube una foto de perfil",
"about": "Escribe una sección 'Acerca de'",
"social": "Agrega un enlace social",
"portfolio": "Agrega un proyecto al portafolio",
- "experience": "Agrega tu experiencia"
+ "experience": "Agrega tu experiencia",
+ "privacy": "Make your profile public"
}
},
"footer": {
@@ -1027,6 +1031,10 @@
"rsa-checkbox": "He probado el método Leer-Buscar-Preguntar",
"similar-questions-checkbox": "He buscado por preguntas similares que ya han sido contestadas en el foro",
"edit-my-profile": "Editar mi perfil",
+ "add-portfolio": "Add portfolio project",
+ "edit-portfolio": "Edit portfolio project",
+ "add-experience": "Add experience",
+ "edit-experience": "Edit experience",
"editor-a11y-off-macos": "Contenido del editor {{editorName}} . Presione Opción+F1 para opciones de accesibilidad.",
"editor-a11y-off-non-macos": "Contenido del editor {{editorName}} . Presione Alt+F1 para opciones de accesibilidad.",
"editor-a11y-on-macos": "Contenido del editor {{editorName}} . El modo de accesibilidad está en 'encendido'. Presiona Comando+E para desactivar o presiona Opción+F1 para más opciones.",
diff --git a/client/i18n/locales/german/intro.json b/client/i18n/locales/german/intro.json
index c1949ab2c16..9ad715a604f 100644
--- a/client/i18n/locales/german/intro.json
+++ b/client/i18n/locales/german/intro.json
@@ -4860,6 +4860,12 @@
"Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works."
]
},
+ "workshop-word-counter": {
+ "title": "Build a Word Counter",
+ "intro": [
+ "In this workshop, you will practice using for...of loops by building a function that counts the occurrences of a string in an array of strings."
+ ]
+ },
"workshop-sentence-analyzer": {
"title": "Build a Sentence Analyzer",
"intro": [
@@ -5068,6 +5074,13 @@
"In this lab you will create a function that skips elements in an array based on a specified step value."
]
},
+ "lab-playlist-remix-engine": {
+ "title": "Build a Playlist Remix Engine",
+ "intro": [
+ "In this lab, you will build a Playlist Remix Engine using JavaScript arrays.",
+ "You will apply array methods and logic to transform data and generate a final remix schedule."
+ ]
+ },
"review-javascript-fundamentals": {
"title": "JavaScript Fundamentals Review",
"intro": [
@@ -6248,6 +6261,12 @@
"In this workshop, you will continue to practice working with TypeScript by building a fortune telling app."
]
},
+ "lab-flashcard-quiz-app": {
+ "title": "Build a Flashcard Quiz App",
+ "intro": [
+ "In this lab, you will practice using TypeScript by building a flashcard quiz app."
+ ]
+ },
"review-typescript": {
"title": "Typescript Review",
"intro": [
@@ -7562,6 +7581,10 @@
"es-a1-quiz-describing-people-at-work": {
"title": "Describing People at Work",
"intro": ["", ""]
+ },
+ "es-a1-learn-talking-about-colleagues": {
+ "title": "Talking About Colleagues",
+ "intro": ["", ""]
}
}
},
diff --git a/client/i18n/locales/german/translations.json b/client/i18n/locales/german/translations.json
index ec066d94506..1b4794ed98a 100644
--- a/client/i18n/locales/german/translations.json
+++ b/client/i18n/locales/german/translations.json
@@ -339,6 +339,7 @@
"keyboard-shortcuts": "Tastaturkurzbefehle aktivieren"
},
"headings": {
+ "personal": "Personal",
"account": "Account",
"certs": "Zertifikate",
"legacy-certs": "Alte Zertifikate",
@@ -469,13 +470,16 @@
},
"completeness": {
"heading": "Profile {{percentage}}% complete",
+ "title": "Profile Completion",
+ "progress": "{{percentage}}% complete",
"name": "Add your name",
"location": "Add your location",
"picture": "Upload a profile picture",
"about": "Write an about section",
"social": "Add a social link",
"portfolio": "Add a portfolio project",
- "experience": "Add your experience"
+ "experience": "Add your experience",
+ "privacy": "Make your profile public"
}
},
"footer": {
@@ -1027,6 +1031,10 @@
"rsa-checkbox": "I have tried the Read-Search-Ask method",
"similar-questions-checkbox": "I have searched for similar questions that have already been answered on the forum",
"edit-my-profile": "Edit my profile",
+ "add-portfolio": "Add portfolio project",
+ "edit-portfolio": "Edit portfolio project",
+ "add-experience": "Add experience",
+ "edit-experience": "Edit experience",
"editor-a11y-off-macos": "{{editorName}} editor content. Press Option+F1 for accessibility options.",
"editor-a11y-off-non-macos": "{{editorName}} editor content. Press Alt+F1 for accessibility options.",
"editor-a11y-on-macos": "{{editorName}} editor content. Accessibility mode set to 'on'. Press Command+E to disable or press Option+F1 for more options.",
diff --git a/client/i18n/locales/italian/intro.json b/client/i18n/locales/italian/intro.json
index dba9bd6a3f9..2beed237096 100644
--- a/client/i18n/locales/italian/intro.json
+++ b/client/i18n/locales/italian/intro.json
@@ -4860,6 +4860,12 @@
"Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works."
]
},
+ "workshop-word-counter": {
+ "title": "Build a Word Counter",
+ "intro": [
+ "In this workshop, you will practice using for...of loops by building a function that counts the occurrences of a string in an array of strings."
+ ]
+ },
"workshop-sentence-analyzer": {
"title": "Build a Sentence Analyzer",
"intro": [
@@ -5068,6 +5074,13 @@
"In this lab you will create a function that skips elements in an array based on a specified step value."
]
},
+ "lab-playlist-remix-engine": {
+ "title": "Build a Playlist Remix Engine",
+ "intro": [
+ "In this lab, you will build a Playlist Remix Engine using JavaScript arrays.",
+ "You will apply array methods and logic to transform data and generate a final remix schedule."
+ ]
+ },
"review-javascript-fundamentals": {
"title": "JavaScript Fundamentals Review",
"intro": [
@@ -6248,6 +6261,12 @@
"In this workshop, you will continue to practice working with TypeScript by building a fortune telling app."
]
},
+ "lab-flashcard-quiz-app": {
+ "title": "Build a Flashcard Quiz App",
+ "intro": [
+ "In this lab, you will practice using TypeScript by building a flashcard quiz app."
+ ]
+ },
"review-typescript": {
"title": "Typescript Review",
"intro": [
@@ -7562,6 +7581,10 @@
"es-a1-quiz-describing-people-at-work": {
"title": "Describing People at Work",
"intro": ["", ""]
+ },
+ "es-a1-learn-talking-about-colleagues": {
+ "title": "Talking About Colleagues",
+ "intro": ["", ""]
}
}
},
diff --git a/client/i18n/locales/italian/translations.json b/client/i18n/locales/italian/translations.json
index 425a9300893..930dc1a428c 100644
--- a/client/i18n/locales/italian/translations.json
+++ b/client/i18n/locales/italian/translations.json
@@ -339,6 +339,7 @@
"keyboard-shortcuts": "Abilita le scorciatoie da tastiera"
},
"headings": {
+ "personal": "Personal",
"account": "Account",
"certs": "Certificazioni",
"legacy-certs": "Vecchie certificazioni",
@@ -469,13 +470,16 @@
},
"completeness": {
"heading": "Profilo completato al {{percentage}}%",
+ "title": "Profile Completion",
+ "progress": "{{percentage}}% complete",
"name": "Aggiungi il tuo nome",
"location": "Aggiungi la tua località",
"picture": "Carica un'immagine del profilo",
"about": "Scrivi una breve biografia",
"social": "Aggiungi un profilo social",
"portfolio": "Aggiungi un progetto al portfolio",
- "experience": "Aggiungi la tua esperienza lavorativa"
+ "experience": "Aggiungi la tua esperienza lavorativa",
+ "privacy": "Make your profile public"
}
},
"footer": {
@@ -1027,6 +1031,10 @@
"rsa-checkbox": "I have tried the Read-Search-Ask method",
"similar-questions-checkbox": "I have searched for similar questions that have already been answered on the forum",
"edit-my-profile": "Edit my profile",
+ "add-portfolio": "Add portfolio project",
+ "edit-portfolio": "Edit portfolio project",
+ "add-experience": "Add experience",
+ "edit-experience": "Edit experience",
"editor-a11y-off-macos": "Contenuto dell'editor {{editorName}}. Premi Opzione+F1 per le opzioni di accessibilità.",
"editor-a11y-off-non-macos": "Contenuto dell'editor {{editorName}}. Premi Alt+F1 per le opzioni di accessibilità.",
"editor-a11y-on-macos": "Contenuto dell'editor {{editorName}}. Modalità accessibilità impostata su 'on'. Premi Comando+E per disattivarla o premi Opzione+F1 per altre opzioni.",
diff --git a/client/i18n/locales/japanese/intro.json b/client/i18n/locales/japanese/intro.json
index d075e125b17..d4ee57959f7 100644
--- a/client/i18n/locales/japanese/intro.json
+++ b/client/i18n/locales/japanese/intro.json
@@ -4860,6 +4860,12 @@
"Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works."
]
},
+ "workshop-word-counter": {
+ "title": "Build a Word Counter",
+ "intro": [
+ "In this workshop, you will practice using for...of loops by building a function that counts the occurrences of a string in an array of strings."
+ ]
+ },
"workshop-sentence-analyzer": {
"title": "Build a Sentence Analyzer",
"intro": [
@@ -5068,6 +5074,13 @@
"In this lab you will create a function that skips elements in an array based on a specified step value."
]
},
+ "lab-playlist-remix-engine": {
+ "title": "Build a Playlist Remix Engine",
+ "intro": [
+ "In this lab, you will build a Playlist Remix Engine using JavaScript arrays.",
+ "You will apply array methods and logic to transform data and generate a final remix schedule."
+ ]
+ },
"review-javascript-fundamentals": {
"title": "JavaScript Fundamentals Review",
"intro": [
@@ -6248,6 +6261,12 @@
"In this workshop, you will continue to practice working with TypeScript by building a fortune telling app."
]
},
+ "lab-flashcard-quiz-app": {
+ "title": "Build a Flashcard Quiz App",
+ "intro": [
+ "In this lab, you will practice using TypeScript by building a flashcard quiz app."
+ ]
+ },
"review-typescript": {
"title": "Typescript Review",
"intro": [
@@ -7562,6 +7581,10 @@
"es-a1-quiz-describing-people-at-work": {
"title": "Describing People at Work",
"intro": ["", ""]
+ },
+ "es-a1-learn-talking-about-colleagues": {
+ "title": "Talking About Colleagues",
+ "intro": ["", ""]
}
}
},
diff --git a/client/i18n/locales/japanese/translations.json b/client/i18n/locales/japanese/translations.json
index 1a90f902fc6..60c06d1fb1b 100644
--- a/client/i18n/locales/japanese/translations.json
+++ b/client/i18n/locales/japanese/translations.json
@@ -339,6 +339,7 @@
"keyboard-shortcuts": "キーボードショートカットを有効にする"
},
"headings": {
+ "personal": "Personal",
"account": "Account",
"certs": "認定証",
"legacy-certs": "レガシー認定証",
@@ -469,13 +470,16 @@
},
"completeness": {
"heading": "Profile {{percentage}}% complete",
+ "title": "Profile Completion",
+ "progress": "{{percentage}}% complete",
"name": "Add your name",
"location": "Add your location",
"picture": "Upload a profile picture",
"about": "Write an about section",
"social": "Add a social link",
"portfolio": "Add a portfolio project",
- "experience": "Add your experience"
+ "experience": "Add your experience",
+ "privacy": "Make your profile public"
}
},
"footer": {
@@ -1027,6 +1031,10 @@
"rsa-checkbox": "Read-Search-Ask (読む - 検索する - 質問する) メソッドを試しました",
"similar-questions-checkbox": "フォーラムで、解決済みの類似質問を検索しました",
"edit-my-profile": "プロフィールを編集",
+ "add-portfolio": "Add portfolio project",
+ "edit-portfolio": "Edit portfolio project",
+ "add-experience": "Add experience",
+ "edit-experience": "Edit experience",
"editor-a11y-off-macos": "{{editorName}} editor content. Press Option+F1 for accessibility options.",
"editor-a11y-off-non-macos": "{{editorName}} editor content. Press Alt+F1 for accessibility options.",
"editor-a11y-on-macos": "{{editorName}} editor content. Accessibility mode set to 'on'. Press Command+E to disable or press Option+F1 for more options.",
diff --git a/client/i18n/locales/korean/intro.json b/client/i18n/locales/korean/intro.json
index eb3b0675455..75a9269d829 100644
--- a/client/i18n/locales/korean/intro.json
+++ b/client/i18n/locales/korean/intro.json
@@ -4722,6 +4722,12 @@
"루프는 자바스크립트의 필수 요소입니다. 다음 강의에서 다양한 루프 유형과 작동 방식 및 반복이 어떻게 이루어지는지 배우세요."
]
},
+ "workshop-word-counter": {
+ "title": "Build a Word Counter",
+ "intro": [
+ "In this workshop, you will practice using for...of loops by building a function that counts the occurrences of a string in an array of strings."
+ ]
+ },
"workshop-sentence-analyzer": {
"title": "문장 분석기 만들기",
"intro": [
@@ -4924,6 +4930,13 @@
"이 실습에서는 지정된 스텝값에 따라 배열에서 요소를 건너뛰는 함수를 작성하세요."
]
},
+ "lab-playlist-remix-engine": {
+ "title": "Build a Playlist Remix Engine",
+ "intro": [
+ "In this lab, you will build a Playlist Remix Engine using JavaScript arrays.",
+ "You will apply array methods and logic to transform data and generate a final remix schedule."
+ ]
+ },
"review-javascript-fundamentals": {
"title": "자바스크립트 기초 복습",
"intro": [
@@ -6070,6 +6083,12 @@
"In this workshop, you will continue to practice working with TypeScript by building a fortune telling app."
]
},
+ "lab-flashcard-quiz-app": {
+ "title": "Build a Flashcard Quiz App",
+ "intro": [
+ "In this lab, you will practice using TypeScript by building a flashcard quiz app."
+ ]
+ },
"review-typescript": {
"title": "TypeScript 복습",
"intro": [
@@ -7312,6 +7331,10 @@
"es-a1-quiz-describing-people-at-work": {
"title": "직장 사람 설명하기",
"intro": ["", ""]
+ },
+ "es-a1-learn-talking-about-colleagues": {
+ "title": "Talking About Colleagues",
+ "intro": ["", ""]
}
}
},
diff --git a/client/i18n/locales/korean/translations.json b/client/i18n/locales/korean/translations.json
index 8dc6e5a2414..184d0183edc 100644
--- a/client/i18n/locales/korean/translations.json
+++ b/client/i18n/locales/korean/translations.json
@@ -339,6 +339,7 @@
"keyboard-shortcuts": "키보드 단축키 활성화"
},
"headings": {
+ "personal": "Personal",
"account": "계정",
"certs": "자격증",
"legacy-certs": "구버전 자격증",
@@ -469,13 +470,16 @@
},
"completeness": {
"heading": "프로필 {{percentage}}% 완료",
+ "title": "Profile Completion",
+ "progress": "{{percentage}}% complete",
"name": "이름 추가",
"location": "위치 추가",
"picture": "프로필 사진 업로드",
"about": "소개 섹션 작성",
"social": "소셜 링크 추가",
"portfolio": "포트폴리오 프로젝트 추가",
- "experience": "경력 추가"
+ "experience": "경력 추가",
+ "privacy": "Make your profile public"
}
},
"footer": {
@@ -1027,6 +1031,10 @@
"rsa-checkbox": "Read-Search-Ask 방법을 시도했습니다",
"similar-questions-checkbox": "포럼에서 이미 답변된 유사 질문을 검색했습니다",
"edit-my-profile": "내 프로필 편집",
+ "add-portfolio": "Add portfolio project",
+ "edit-portfolio": "Edit portfolio project",
+ "add-experience": "Add experience",
+ "edit-experience": "Edit experience",
"editor-a11y-off-macos": "{{editorName}} 편집기 내용입니다. 접근성 옵션은 Option+F1을 누르세요.",
"editor-a11y-off-non-macos": "{{editorName}} 편집기 내용입니다. 접근성 옵션은 Alt+F1을 누르세요.",
"editor-a11y-on-macos": "{{editorName}} 편집기 내용입니다. 접근성 모드가 “켜짐”으로 설정되어 있습니다. 비활성화하려면 Command+E를 누르거나 추가 옵션은 Option+F1을 누르세요.",
diff --git a/client/i18n/locales/portuguese/intro.json b/client/i18n/locales/portuguese/intro.json
index 752c83c4b93..4e40272c2c9 100644
--- a/client/i18n/locales/portuguese/intro.json
+++ b/client/i18n/locales/portuguese/intro.json
@@ -4898,6 +4898,12 @@
"Laços são uma parte essencial do JavaScript. Por isso, as seguintes lições foram preparadas para que você aprenda sobre os diferentes tipos de laços, como eles funcionam e também como a iteração funciona."
]
},
+ "workshop-word-counter": {
+ "title": "Build a Word Counter",
+ "intro": [
+ "In this workshop, you will practice using for...of loops by building a function that counts the occurrences of a string in an array of strings."
+ ]
+ },
"workshop-sentence-analyzer": {
"title": "Crie um Analisador de Frases",
"intro": [
@@ -5108,6 +5114,13 @@
"Neste laboratório, você criará uma função que pula elementos em um array com base em um valor de passo especificado."
]
},
+ "lab-playlist-remix-engine": {
+ "title": "Build a Playlist Remix Engine",
+ "intro": [
+ "In this lab, you will build a Playlist Remix Engine using JavaScript arrays.",
+ "You will apply array methods and logic to transform data and generate a final remix schedule."
+ ]
+ },
"review-javascript-fundamentals": {
"title": "Revisão dos Fundamentos do JavaScript",
"intro": [
@@ -6304,6 +6317,12 @@
"In this workshop, you will continue to practice working with TypeScript by building a fortune telling app."
]
},
+ "lab-flashcard-quiz-app": {
+ "title": "Build a Flashcard Quiz App",
+ "intro": [
+ "In this lab, you will practice using TypeScript by building a flashcard quiz app."
+ ]
+ },
"review-typescript": {
"title": "Revisão sobre TypeScript",
"intro": [
@@ -7638,6 +7657,10 @@
"es-a1-quiz-describing-people-at-work": {
"title": "Descrevendo Pessoas no Trabalho",
"intro": ["", ""]
+ },
+ "es-a1-learn-talking-about-colleagues": {
+ "title": "Talking About Colleagues",
+ "intro": ["", ""]
}
}
},
diff --git a/client/i18n/locales/portuguese/translations.json b/client/i18n/locales/portuguese/translations.json
index c25d9a0083d..e003de03a41 100644
--- a/client/i18n/locales/portuguese/translations.json
+++ b/client/i18n/locales/portuguese/translations.json
@@ -339,6 +339,7 @@
"keyboard-shortcuts": "Habilitar teclas de atalho"
},
"headings": {
+ "personal": "Personal",
"account": "Conta",
"certs": "Certificações",
"legacy-certs": "Certificações legadas",
@@ -469,13 +470,16 @@
},
"completeness": {
"heading": "Perfil {{percentage}}% completo",
+ "title": "Profile Completion",
+ "progress": "{{percentage}}% complete",
"name": "Adicione o nome",
"location": "Adicione a localização",
"picture": "Envie uma foto de perfil",
"about": "Escreva uma seção 'Sobre'",
"social": "Adicione um link social",
"portfolio": "Adicione um projeto ao portfólio",
- "experience": "Adicione experiência"
+ "experience": "Adicione experiência",
+ "privacy": "Make your profile public"
}
},
"footer": {
@@ -1027,6 +1031,10 @@
"rsa-checkbox": "Eu tentei o método Ler-Pesquisar-Perguntar",
"similar-questions-checkbox": "Eu pesquisei por perguntas semelhantes que já foram respondidas no fórum",
"edit-my-profile": "Editar meu perfil",
+ "add-portfolio": "Add portfolio project",
+ "edit-portfolio": "Edit portfolio project",
+ "add-experience": "Add experience",
+ "edit-experience": "Edit experience",
"editor-a11y-off-macos": "Conteúdo do editor {{editorName}} . Pressione Alt+F1 para opções de acessibilidade.",
"editor-a11y-off-non-macos": "Conteúdo do editor {{editorName}} . Pressione Alt+F1 para opções de acessibilidade.",
"editor-a11y-on-macos": "{{editorName}} conteúdo do editor. Modo de acessibilidade definido como 'ligado'. Pressione Command+E para desativar ou pressione Option+F1 para mais opções.",
diff --git a/client/i18n/locales/swahili/intro.json b/client/i18n/locales/swahili/intro.json
index 90194df2d46..fb5f9df3967 100644
--- a/client/i18n/locales/swahili/intro.json
+++ b/client/i18n/locales/swahili/intro.json
@@ -4860,6 +4860,12 @@
"Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works."
]
},
+ "workshop-word-counter": {
+ "title": "Build a Word Counter",
+ "intro": [
+ "In this workshop, you will practice using for...of loops by building a function that counts the occurrences of a string in an array of strings."
+ ]
+ },
"workshop-sentence-analyzer": {
"title": "Build a Sentence Analyzer",
"intro": [
@@ -5068,6 +5074,13 @@
"In this lab you will create a function that skips elements in an array based on a specified step value."
]
},
+ "lab-playlist-remix-engine": {
+ "title": "Build a Playlist Remix Engine",
+ "intro": [
+ "In this lab, you will build a Playlist Remix Engine using JavaScript arrays.",
+ "You will apply array methods and logic to transform data and generate a final remix schedule."
+ ]
+ },
"review-javascript-fundamentals": {
"title": "JavaScript Fundamentals Review",
"intro": [
@@ -6248,6 +6261,12 @@
"In this workshop, you will continue to practice working with TypeScript by building a fortune telling app."
]
},
+ "lab-flashcard-quiz-app": {
+ "title": "Build a Flashcard Quiz App",
+ "intro": [
+ "In this lab, you will practice using TypeScript by building a flashcard quiz app."
+ ]
+ },
"review-typescript": {
"title": "Typescript Review",
"intro": [
@@ -7562,6 +7581,10 @@
"es-a1-quiz-describing-people-at-work": {
"title": "Describing People at Work",
"intro": ["", ""]
+ },
+ "es-a1-learn-talking-about-colleagues": {
+ "title": "Talking About Colleagues",
+ "intro": ["", ""]
}
}
},
diff --git a/client/i18n/locales/swahili/translations.json b/client/i18n/locales/swahili/translations.json
index 0a40c6129b8..b1f95c865ee 100644
--- a/client/i18n/locales/swahili/translations.json
+++ b/client/i18n/locales/swahili/translations.json
@@ -339,6 +339,7 @@
"keyboard-shortcuts": "Wezesha Njia za Mkato za Kibodi"
},
"headings": {
+ "personal": "Personal",
"account": "Account",
"certs": "Vyeti",
"legacy-certs": "Vyeti vya Legacy",
@@ -469,13 +470,16 @@
},
"completeness": {
"heading": "Profile {{percentage}}% complete",
+ "title": "Profile Completion",
+ "progress": "{{percentage}}% complete",
"name": "Add your name",
"location": "Add your location",
"picture": "Upload a profile picture",
"about": "Write an about section",
"social": "Add a social link",
"portfolio": "Add a portfolio project",
- "experience": "Add your experience"
+ "experience": "Add your experience",
+ "privacy": "Make your profile public"
}
},
"footer": {
@@ -1027,6 +1031,10 @@
"rsa-checkbox": "I have tried the Read-Search-Ask method",
"similar-questions-checkbox": "I have searched for similar questions that have already been answered on the forum",
"edit-my-profile": "Edit my profile",
+ "add-portfolio": "Add portfolio project",
+ "edit-portfolio": "Edit portfolio project",
+ "add-experience": "Add experience",
+ "edit-experience": "Edit experience",
"editor-a11y-off-macos": "{{editorName}} editor content. Press Option+F1 for accessibility options.",
"editor-a11y-off-non-macos": "{{editorName}} editor content. Press Alt+F1 for accessibility options.",
"editor-a11y-on-macos": "{{editorName}} editor content. Accessibility mode set to 'on'. Press Command+E to disable or press Option+F1 for more options.",
diff --git a/client/i18n/locales/ukrainian/intro.json b/client/i18n/locales/ukrainian/intro.json
index 216dc21bc37..a011f060c4b 100644
--- a/client/i18n/locales/ukrainian/intro.json
+++ b/client/i18n/locales/ukrainian/intro.json
@@ -4850,6 +4850,12 @@
"Цикли — це важлива частина JavaScript. Тому наступні лекції підготовлено для того, щоб ви дізналися про різні типи циклів, як вони працюють, а також про те, як працює ітерація."
]
},
+ "workshop-word-counter": {
+ "title": "Створіть лічильник слів",
+ "intro": [
+ "У цьому практичному занятті ви будете використовувати цикли for...of для створення функції, яка рахує скільки разів зустрічається рядок в масиві."
+ ]
+ },
"workshop-sentence-analyzer": {
"title": "Створіть аналізатор речень",
"intro": [
@@ -5058,6 +5064,13 @@
"У цій лабораторній роботі ви створите функцію, яка пропускає елементи в масиві на основі вказаного значення."
]
},
+ "lab-playlist-remix-engine": {
+ "title": "Build a Playlist Remix Engine",
+ "intro": [
+ "In this lab, you will build a Playlist Remix Engine using JavaScript arrays.",
+ "You will apply array methods and logic to transform data and generate a final remix schedule."
+ ]
+ },
"review-javascript-fundamentals": {
"title": "Повторення основ JavaScript",
"intro": [
@@ -6207,9 +6220,9 @@
]
},
"lab-motorcycle-shop": {
- "title": "Build a Motorcycle Shop",
+ "title": "Створіть магазин мотоциклів",
"intro": [
- "For this lab, you will use TypeScript to build a Motorcycle Shop."
+ "У цій лабораторній роботі ви будете використовувати TypeScript, щоб створити магазин мотоциклів."
]
},
"lecture-working-with-generics-and-type-narrowing": {
@@ -6237,9 +6250,15 @@
]
},
"workshop-fortune-teller-app": {
- "title": "Build a Fortune Telling App",
+ "title": "Створіть генератор передбачень",
"intro": [
- "In this workshop, you will continue to practice working with TypeScript by building a fortune telling app."
+ "У цьому практичному занятті ви продовжите працювати з TypeScript, створивши застосунок з передбаченнями."
+ ]
+ },
+ "lab-flashcard-quiz-app": {
+ "title": "Створіть програму з вікториною",
+ "intro": [
+ "У цій лабораторній роботі ви будете використовувати TypeScript, щоб створити вікторину з картками."
]
},
"review-typescript": {
@@ -7550,6 +7569,10 @@
"es-a1-quiz-describing-people-at-work": {
"title": "Тест «Опис колег»",
"intro": ["", ""]
+ },
+ "es-a1-learn-talking-about-colleagues": {
+ "title": "Як говорити про колег?",
+ "intro": ["", ""]
}
}
},
diff --git a/client/i18n/locales/ukrainian/translations.json b/client/i18n/locales/ukrainian/translations.json
index 7c9173841fb..3632f5ada0f 100644
--- a/client/i18n/locales/ukrainian/translations.json
+++ b/client/i18n/locales/ukrainian/translations.json
@@ -339,6 +339,7 @@
"keyboard-shortcuts": "Дозволити клавіатурні скорочення"
},
"headings": {
+ "personal": "Personal",
"account": "Обліковий запис",
"certs": "Сертифікації",
"legacy-certs": "Застарілі сертифікації",
@@ -469,13 +470,16 @@
},
"completeness": {
"heading": "Профіль заповнено на {{percentage}}%",
+ "title": "Profile Completion",
+ "progress": "{{percentage}}% complete",
"name": "Додайте ім’я",
"location": "Додайте місцеперебування",
"picture": "Завантажте фото",
"about": "Заповніть біографію",
"social": "Додайте посилання на соцмережі",
"portfolio": "Додайте портфоліо",
- "experience": "Додайте досвід"
+ "experience": "Додайте досвід",
+ "privacy": "Make your profile public"
}
},
"footer": {
@@ -1027,6 +1031,10 @@
"rsa-checkbox": "Я спробував(-ла) метод читати-шукати-питати",
"similar-questions-checkbox": "Я шукав(-ла) схожі запитання на форумі, на які вже є відповідь",
"edit-my-profile": "Редагувати профіль",
+ "add-portfolio": "Add portfolio project",
+ "edit-portfolio": "Edit portfolio project",
+ "add-experience": "Add experience",
+ "edit-experience": "Edit experience",
"editor-a11y-off-macos": "Вміст редактора {{editorName}}. Щоб перейти до функцій доступності, натисніть Option+F1.",
"editor-a11y-off-non-macos": "Вміст редактора {{editorName}}. Щоб перейти до функцій доступності, натисніть Alt+F1.",
"editor-a11y-on-macos": "Вміст редактора {{editorName}}. Ввімкнено режим доступності. Натисніть Command+E, щоб вимкнути його, або Option+F1, щоб переглянути більше функцій.",