Competencias
+<%- labels.HARD_SKILLS_HEADING %>
-
<%_ for (const item of hardSkillsCollection) { -%>
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/hard-skills-section.part.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/hard-skills-section.part.ts
index a5cf88df..3b815663 100644
--- a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/hard-skills-section.part.ts
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/hard-skills-section.part.ts
@@ -1,16 +1,22 @@
-import { ManfredAwesomicCV } from '@/model';
+import { ManfredAwesomicCV, Settings, Language } from '@/model';
import { HardSkillVM, mapFromCvToHardSkillVm } from '@lemoncode/manfred-common/hard-skill-section';
+import { ISO_SPANISH_LANGUAGE } from '@/engine/engine.const';
+import { getLabels } from './labels';
import ejs from 'ejs';
import hardSkillsTemplate from './hard-skills-section.ejs?raw';
-export const generateHardSkillsSection = (cv: ManfredAwesomicCV): string => {
+export const generateHardSkillsSection = (cv: ManfredAwesomicCV, settings: Settings): string => {
const hardSkillsSectionVm = mapFromCvToHardSkillVm(cv);
- return generateHardSkillSectionInner(hardSkillsSectionVm);
+ return generateHardSkillSectionInner(hardSkillsSectionVm, settings.language);
};
-const generateHardSkillSectionInner = (hardSkillsSectionVm: HardSkillVM[]): string => {
+const generateHardSkillSectionInner = (
+ hardSkillsSectionVm: HardSkillVM[],
+ language: Language = ISO_SPANISH_LANGUAGE
+): string => {
const rootObject = {
hardSkillsCollection: hardSkillsSectionVm,
+ labels: getLabels(language),
};
return ejs.render(hardSkillsTemplate, rootObject);
};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/hard-skills-english-labels.const.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/hard-skills-english-labels.const.ts
new file mode 100644
index 00000000..57fc749e
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/hard-skills-english-labels.const.ts
@@ -0,0 +1,5 @@
+import { HardSkillsLabels } from './hard-skills-label.model';
+
+export const englishHardSkillsLabels: HardSkillsLabels = {
+ HARD_SKILLS_HEADING: 'Hard Skills',
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/hard-skills-label.model.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/hard-skills-label.model.ts
new file mode 100644
index 00000000..c054c0db
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/hard-skills-label.model.ts
@@ -0,0 +1,3 @@
+export interface HardSkillsLabels {
+ HARD_SKILLS_HEADING: string;
+}
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/hard-skills-spanish-labels.const.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/hard-skills-spanish-labels.const.ts
new file mode 100644
index 00000000..688d9216
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/hard-skills-spanish-labels.const.ts
@@ -0,0 +1,5 @@
+import { HardSkillsLabels } from './hard-skills-label.model';
+
+export const spanishHardSkillsLabels: HardSkillsLabels = {
+ HARD_SKILLS_HEADING: 'Competencias',
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/index.ts
new file mode 100644
index 00000000..2c8f54f5
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/hard-skills-section/labels/index.ts
@@ -0,0 +1,15 @@
+import { Language } from '@/model';
+import { HardSkillsLabels } from './hard-skills-label.model';
+import { spanishHardSkillsLabels } from './hard-skills-spanish-labels.const';
+import { englishHardSkillsLabels } from './hard-skills-english-labels.const';
+
+export const getLabels = (language: Language): HardSkillsLabels => {
+ switch (language) {
+ case 'es':
+ return spanishHardSkillsLabels;
+ case 'en':
+ return englishHardSkillsLabels;
+ default:
+ throw new Error(`Language not supported: ${language}`);
+ }
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/index.ts
index 1fe2699c..c79bff55 100644
--- a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/index.ts
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/index.ts
@@ -1 +1 @@
-export * from './langauge-section.part';
+export * from './language-section.part';
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/index.ts
new file mode 100644
index 00000000..eca31dab
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/index.ts
@@ -0,0 +1,15 @@
+import { Language } from '@/model';
+import { LanguageLabels } from './language-label.model';
+import { spanishLanguageLabels } from './language-spanish-labels.const';
+import { englishLanguageLabels } from './language-english-labels.const';
+
+export const getLabels = (language: Language): LanguageLabels => {
+ switch (language) {
+ case 'es':
+ return spanishLanguageLabels;
+ case 'en':
+ return englishLanguageLabels;
+ default:
+ throw new Error(`Language not supported: ${language}`);
+ }
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/language-english-labels.const.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/language-english-labels.const.ts
new file mode 100644
index 00000000..62a2acf8
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/language-english-labels.const.ts
@@ -0,0 +1,9 @@
+import { LanguageLabels } from './language-label.model';
+
+export const englishLanguageLabels: LanguageLabels = {
+ LANGUAGE_HEADING: 'Languages',
+ LEVEL_ONE: 'Native/Bilingual',
+ LEVEL_TWO: 'Fluent',
+ LEVEL_THREE: 'Intermediate',
+ LEVEL_FOUR: 'Basic',
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/language-label.model.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/language-label.model.ts
new file mode 100644
index 00000000..8b966ee7
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/language-label.model.ts
@@ -0,0 +1,7 @@
+export interface LanguageLabels {
+ LANGUAGE_HEADING: string;
+ LEVEL_ONE: string;
+ LEVEL_TWO: string;
+ LEVEL_THREE: string;
+ LEVEL_FOUR: string;
+}
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/language-spanish-labels.const.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/language-spanish-labels.const.ts
new file mode 100644
index 00000000..3b285d9f
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/labels/language-spanish-labels.const.ts
@@ -0,0 +1,9 @@
+import { LanguageLabels } from './language-label.model';
+
+export const spanishLanguageLabels: LanguageLabels = {
+ LANGUAGE_HEADING: 'Idiomas',
+ LEVEL_ONE: 'Nativo/Bilingue',
+ LEVEL_TWO: 'Fluido',
+ LEVEL_THREE: 'Intermedio',
+ LEVEL_FOUR: 'Basico',
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/langauge-section.part.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/langauge-section.part.ts
deleted file mode 100644
index fba81325..00000000
--- a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/langauge-section.part.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { ManfredAwesomicCV } from '@/model';
-import { LanguageVm, mapFromCvToLanguageVm } from '@lemoncode/manfred-common/language-section';
-import ejs from 'ejs';
-import languageSection from './language-section.ejs?raw';
-
-export const generateLanguageSection = (cv: ManfredAwesomicCV): string => {
- const languageSectionVm = mapFromCvToLanguageVm(cv);
- return generateLanguageSectionInner(languageSectionVm);
-};
-
-const generateLanguageSectionInner = (languageSectionVm: LanguageVm[]): string => {
- const rootObject = {
- languageCollection: languageSectionVm,
- };
- return ejs.render(languageSection, rootObject);
-};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/language-section.ejs b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/language-section.ejs
index 19c27411..ca966a0c 100644
--- a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/language-section.ejs
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/language-section.ejs
@@ -4,45 +4,48 @@
-
- <%= language.name %>
- <%_ if(language.level === 'Habilidad básica' || language.level === 'Habilidad limitada en el trabajo') { -%> + <%_ if(language.level === 'Elementary proficiency' || language.level === 'Limited working proficiency') { -%> +
<%= labels.LEVEL_FOUR %>
<%_ } -%> - <%_ if(language.level === 'Habilidad profesional completo') { -%> + <%_ if(language.level === 'Professional working proficiency') { -%> +<%= labels.LEVEL_THREE %>
<%_ } -%> - <%_ if(language.level === 'Habilidad profesional en el trabajo') { -%> + <%_ if(language.level === 'Full professional proficiency') { -%> +<%= labels.LEVEL_TWO %>
<%_ } -%> - <%_ if(language.level === 'Habilidad nativo o bilingüe') { -%> + <%_ if(language.level === 'Native or bilingual proficiency') { -%> +<%= labels.LEVEL_ONE %>
<%_ } -%> -<%= language.level %>
<%_ } -%>
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/language-section.part.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/language-section.part.ts
new file mode 100644
index 00000000..7ed3bf96
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/language-section/language-section.part.ts
@@ -0,0 +1,22 @@
+import { ManfredAwesomicCV, Settings, Language } from '@/model';
+import { LanguageVm, mapFromCvToLanguageVm } from '@lemoncode/manfred-common/language-section';
+import { ISO_SPANISH_LANGUAGE } from '@/engine/engine.const';
+import { getLabels } from './labels';
+import ejs from 'ejs';
+import languageTemplate from './language-section.ejs?raw';
+
+export const generateLanguageSection = (cv: ManfredAwesomicCV, settings: Settings): string => {
+ const languageSectionVm = mapFromCvToLanguageVm(cv);
+ return generateLanguageSectionInner(languageSectionVm, settings.language);
+};
+
+const generateLanguageSectionInner = (
+ languageSectionVm: LanguageVm[],
+ language: Language = ISO_SPANISH_LANGUAGE
+): string => {
+ const rootObject = {
+ languageCollection: languageSectionVm,
+ labels: getLabels(language),
+ };
+ return ejs.render(languageTemplate, rootObject);
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/index.ts
new file mode 100644
index 00000000..9529c12a
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/index.ts
@@ -0,0 +1,15 @@
+import { Language } from '@/model';
+import { SoftSkillsLabels } from './soft-skills-label.model';
+import { spanishSoftSkillsLabels } from './soft-skills-spanish-labels.const';
+import { englishSoftSkillsLabels } from './soft-skills-english-labels.const';
+
+export const getLabels = (language: Language): SoftSkillsLabels => {
+ switch (language) {
+ case 'es':
+ return spanishSoftSkillsLabels;
+ case 'en':
+ return englishSoftSkillsLabels;
+ default:
+ throw new Error(`Language not supported: ${language}`);
+ }
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/soft-skills-english-labels.const.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/soft-skills-english-labels.const.ts
new file mode 100644
index 00000000..d2510c35
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/soft-skills-english-labels.const.ts
@@ -0,0 +1,5 @@
+import { SoftSkillsLabels } from './soft-skills-label.model';
+
+export const englishSoftSkillsLabels: SoftSkillsLabels = {
+ SOFT_SKILLS_HEADING: 'Soft skills',
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/soft-skills-label.model.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/soft-skills-label.model.ts
new file mode 100644
index 00000000..602ec990
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/soft-skills-label.model.ts
@@ -0,0 +1,3 @@
+export interface SoftSkillsLabels {
+ SOFT_SKILLS_HEADING: string;
+}
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/soft-skills-spanish-labels.const.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/soft-skills-spanish-labels.const.ts
new file mode 100644
index 00000000..446d1fe1
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/labels/soft-skills-spanish-labels.const.ts
@@ -0,0 +1,5 @@
+import { SoftSkillsLabels } from './soft-skills-label.model';
+
+export const spanishSoftSkillsLabels: SoftSkillsLabels = {
+ SOFT_SKILLS_HEADING: 'Habilidades',
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/soft-skills-section.ejs b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/soft-skills-section.ejs
index de6ff876..4972f6cd 100644
--- a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/soft-skills-section.ejs
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/soft-skills-section.ejs
@@ -4,7 +4,7 @@
- - <%= competence %> diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/studies-section.part.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/studies-section.part.ts index 8a60bbfb..bc3ce12e 100644 --- a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/studies-section.part.ts +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/studies-section.part.ts @@ -1,14 +1,22 @@ +import { StudiesSectionVm, mapFromMacCvToStudiesSectionVm } from '@lemoncode/manfred-common/studies-section'; +import { ManfredAwesomicCV, Settings, Language } from '@/model'; +import { ISO_SPANISH_LANGUAGE } from '@/engine/engine.const'; +import { getLabels } from './labels'; import ejs from 'ejs'; import studiesTemplate from './studies-section.ejs?raw'; -import { StudiesSectionVm, mapFromMacCvToStudiesSectionVm } from '@lemoncode/manfred-common/studies-section'; -import { ManfredAwesomicCV } from '@/model'; -export const generateStudiesSection = (cv: ManfredAwesomicCV): string => { +export const generateStudiesSection = (cv: ManfredAwesomicCV, settings: Settings): string => { const studiesSectionVm = mapFromMacCvToStudiesSectionVm(cv); - return generateStudiesSectionInner(studiesSectionVm); + return generateStudiesSectionInner(studiesSectionVm, settings.language); }; -const generateStudiesSectionInner = (studiesSectionVm: StudiesSectionVm[]): string => { - const rootObject = { studiesCollection: studiesSectionVm }; +const generateStudiesSectionInner = ( + studiesSectionVm: StudiesSectionVm[], + language: Language = ISO_SPANISH_LANGUAGE +): string => { + const rootObject = { + studiesCollection: studiesSectionVm, + labels: getLabels(language), + }; return ejs.render(studiesTemplate, rootObject); }; diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/index.ts index 63eda005..010223d0 100644 --- a/packages/manfred2html/src/engine/cv-x-wing-squadron/index.ts +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/index.ts @@ -24,13 +24,13 @@ export const exportManfredJsonToCVXWingHTML = (manfredJsonContent: ManfredAwesom const headerSection = generateHeaderSection(manfredJsonContent); const mainElementStart = generateMainElementStart(); const mainElementEnd = generateMainElementEnd(); - const languageSection = generateLanguageSection(manfredJsonContent); - const hardSkillsSection = generateHardSkillsSection(manfredJsonContent); - const softSkillsSection = generateSoftSkillsSection(manfredJsonContent); - const experienceSection = generateExperienceSection(manfredJsonContent); - const studiesSection = generateStudiesSection(manfredJsonContent); const relevantLinksSection = generateRelevantLinksSection(manfredJsonContent, settings); const aboutMeSection = generateAboutMeSection(manfredJsonContent); + const studiesSection = generateStudiesSection(manfredJsonContent, settings); + const experienceSection = generateExperienceSection(manfredJsonContent, settings); + const softSkillsSection = generateSoftSkillsSection(manfredJsonContent, settings); + const hardSkillsSection = generateHardSkillsSection(manfredJsonContent, settings); + const languageSection = generateLanguageSection(manfredJsonContent, settings); return ` ${htmlDocumentStart} ${headerElementStart}
Idiomas
+<%= labels.LANGUAGE_HEADING %>
-
<%_ for(const language of languageCollection) { -%>
Habilidades
+<%= labels.SOFT_SKILLS_HEADING %>
-
<%_ for(const softSkill of softSkillsCollection) { -%>
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/soft-skills-section.part.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/soft-skills-section.part.ts
index f95c24f6..1fd60b55 100644
--- a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/soft-skills-section.part.ts
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/soft-skills-section/soft-skills-section.part.ts
@@ -1,16 +1,22 @@
import { SoftSkillVM, mapFromCvToSoftSkillVm } from '@lemoncode/manfred-common/soft-skill-section';
-import { ManfredAwesomicCV } from '@/model';
+import { ManfredAwesomicCV, Settings, Language } from '@/model';
+import { ISO_SPANISH_LANGUAGE } from '@/engine/engine.const';
+import { getLabels } from './labels';
import ejs from 'ejs';
import softSkillsTemplate from './soft-skills-section.ejs?raw';
-export const generateSoftSkillsSection = (cv: ManfredAwesomicCV): string => {
+export const generateSoftSkillsSection = (cv: ManfredAwesomicCV, settings: Settings): string => {
const softSkillsSectionVm = mapFromCvToSoftSkillVm(cv);
- return generateSoftSkillsSectionInner(softSkillsSectionVm);
+ return generateSoftSkillsSectionInner(softSkillsSectionVm, settings.language);
};
-const generateSoftSkillsSectionInner = (softSkillsSectionVm: SoftSkillVM[]): string => {
+const generateSoftSkillsSectionInner = (
+ softSkillsSectionVm: SoftSkillVM[],
+ language: Language = ISO_SPANISH_LANGUAGE
+): string => {
const rootObject = {
softSkillsCollection: softSkillsSectionVm,
+ labels: getLabels(language),
};
return ejs.render(softSkillsTemplate, rootObject);
};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/index.ts
new file mode 100644
index 00000000..d0f8daeb
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/index.ts
@@ -0,0 +1,15 @@
+import { Language } from '@/model';
+import { StudiesLabels } from './studies-label.model';
+import { spanishStudiesLabels } from './studies-spanish-labels.const';
+import { englishStudiesLabels } from './studies-english-labels.const';
+
+export const getLabels = (language: Language): StudiesLabels => {
+ switch (language) {
+ case 'es':
+ return spanishStudiesLabels;
+ case 'en':
+ return englishStudiesLabels;
+ default:
+ throw new Error(`Language not supported: ${language}`);
+ }
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/studies-english-labels.const.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/studies-english-labels.const.ts
new file mode 100644
index 00000000..b6c79a75
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/studies-english-labels.const.ts
@@ -0,0 +1,7 @@
+import { StudiesLabels } from './studies-label.model';
+
+export const englishStudiesLabels: StudiesLabels = {
+ STUDIES_HEADING: 'Studies',
+ TECH_TOOLS_HEADING: 'Technologies and Tools',
+ CURRENT_DATE: 'Now',
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/studies-label.model.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/studies-label.model.ts
new file mode 100644
index 00000000..2337736a
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/studies-label.model.ts
@@ -0,0 +1,5 @@
+export interface StudiesLabels {
+ STUDIES_HEADING: string;
+ TECH_TOOLS_HEADING: string;
+ CURRENT_DATE: string;
+}
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/studies-spanish-labels.const.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/studies-spanish-labels.const.ts
new file mode 100644
index 00000000..328dfbb9
--- /dev/null
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/labels/studies-spanish-labels.const.ts
@@ -0,0 +1,7 @@
+import { StudiesLabels } from './studies-label.model';
+
+export const spanishStudiesLabels: StudiesLabels = {
+ STUDIES_HEADING: 'Estudios',
+ TECH_TOOLS_HEADING: 'Tecnologias y Herramientas',
+ CURRENT_DATE: 'Actualidad',
+};
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/studies-section.ejs b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/studies-section.ejs
index e933efc5..bf6688fa 100644
--- a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/studies-section.ejs
+++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/studies-section/studies-section.ejs
@@ -4,7 +4,7 @@
-
Educación
+<%= labels.STUDIES_HEADING
<%_ for (const study of studiesCollection) { -%><%= study.institution.description %>
<%_ if(study.linkedCompetences && study.linkedCompetences.length !== 0) { -%> -Tecnologías y Herramientas
+<%= labels.TECH_TOOLS_HEADING %>
-
<%_ for(const competence of study.linkedCompetences) { -%>