YAMLResume

Esquema Zod

YAMLResume adopta zod para validar los datos del currículum en tiempo de ejecución.

Este documento describe todos los esquemas zod usados en YAMLResume. Si te interesan los detalles de implementación, puedes encontrar el código fuente aquí.

Esquema Resume

Define la validación de la estructura global del currículum, incluyendo validación de contenido y de layout.

PropTipoRequerido
contentResumeContentSchema
layout?ResumeLayoutSchema⬜️

ResumeContentSchema

Define la estructura de validación para todo el contenido del currículum.

PropTipoRequerido
basicsBasicsItemSchema
educationEducationItemSchema[]
awards?AwardItemSchema[]⬜️
certificates?CertificateItemSchema[]⬜️
interests?InterestItemSchema[]⬜️
languages?LanguageItemSchema[]⬜️
location?LocationItemSchema⬜️
projects?ProjectItemSchema[]⬜️
profiles?ProfileItemSchema[]⬜️
publications?PublicationItemSchema[]⬜️
references?ReferenceItemSchema[]⬜️
skills?SkillItemSchema[]⬜️
volunteer?VolunteerItemSchema[]⬜️
work?WorkItemSchema[]⬜️

AwardItemSchema

Valida un único premio, honor o reconocimiento recibido.

PropTipoRequeridoReglas de validación
awarderstring2-128 caracteres
titlestring2-128 caracteres
date?string⬜️ver date schema
summary?string⬜️ver summary schema

BasicsItemSchema

Valida la información personal y de contacto principal.

PropTipoRequeridoReglas de validación
namestring2-128 caracteres
email?string⬜️ver email schema
headline?string⬜️2-128 caracteres
phone?string⬜️ver phone schema
summary?string⬜️ver summary schema
url?string⬜️ver url schema

CertificateItemSchema

Valida una certificación, credencial o calificación profesional.

PropTipoRequeridoReglas de validación
issuerstring2-128 caracteres
namestring2-128 caracteres
date?string⬜️ver date schema
url?string⬜️ver url schema

EducationItemSchema

Valida una experiencia o programa educativo.

PropTipoRequeridoReglas de validación
areastring2-64 caracteres
degreeDegreeDebe estar en las opciones de degree
institutionstring2-128 caracteres
startDatestringver date schema
courses?string[]⬜️Cada ítem 2-128 caracteres
endDate?string⬜️ver date schema
summary?string⬜️ver summary schema
score?string⬜️2-32 caracteres
url?string⬜️ver url schema

InterestItemSchema

Valida un interés, hobby o actividad personal.

PropTipoRequeridoReglas de validación
namestring2-128 caracteres
keywords?string[]⬜️ver keywords schema

LanguageItemSchema

Valida un ítem de competencia lingüística.

PropTipoRequeridoReglas de validación
fluencyFluencyDebe estar en fluency options
languageLanguageDebe estar en language options
keywords?string[]⬜️Cada ítem 1-32 caracteres

LocationItemSchema

Valida información de localización y dirección.

PropTipoRequeridoReglas de validación
citystring2-128 caracteres
address?string⬜️2-128 caracteres
country?Country⬜️Debe estar en country options
postalCode?string⬜️2-128 caracteres
region?string⬜️2-128 caracteres

ProfileItemSchema

Valida un perfil online o presencia en redes.

PropTipoRequeridoReglas de validación
networkNetworkDebe estar en network options
usernamestring2-128 caracteres
url?string⬜️URL válida, máximo 256 caracteres

ProjectItemSchema

Valida un proyecto, pieza de portfolio o trabajo técnico.

PropTipoRequeridoReglas de validación
namestring2-128 caracteres
startDatestringver date schema
summarystringver summary schema
description?string⬜️4-128 caracteres
endDate?string⬜️ver date schema
keywords?string[]⬜️Cada ítem 1-32 caracteres
url?string⬜️URL válida, máximo 256 caracteres

PublicationItemSchema

Valida una publicación, trabajo de investigación o artículo académico.

PropTipoRequeridoReglas de validación
namestring2-128 caracteres
publisherstring2-128 caracteres
releaseDate?string⬜️ver date schema
summary?string⬜️ver summary schema
url?string⬜️URL válida, máximo 256 caracteres

ReferenceItemSchema

Valida una referencia profesional o recomendación.

PropTipoRequeridoReglas de validación
namestring2-128 caracteres
summarystringver summary schema
email?string⬜️ver email schema
phone?string⬜️Formato de teléfono válido
relationship?string⬜️2-128 caracteres

SkillItemSchema

Valida una habilidad o capacidad técnica.

PropTipoRequeridoReglas de validación
levelLevelDebe estar en level options
namestring2-128 caracteres
keywords?string[]⬜️Cada ítem 1-32 caracteres

VolunteerItemSchema

Valida una experiencia de voluntariado o servicio comunitario.

PropTipoRequeridoReglas de validación
organizationstring2-128 caracteres
positionstring2-128 caracteres
startDatestringver date schema
summarystringver summary schema
endDate?string⬜️ver date schema
url?string⬜️URL válida, máximo 256 caracteres

WorkItemSchema

Valida una experiencia laboral o puesto.

PropTipoRequeridoReglas de validación
namestring2-128 caracteres
positionstring2-128 caracteres
startDatestringver date schema
summarystringver summary schema
endDate?string⬜️ver date schema
keywords?string[]⬜️Cada ítem 1-32 caracteres
url?string⬜️URL válida, máximo 256 caracteres

ResumeLayoutSchema

Define la configuración de validación del layout.

PropTipoRequerido
locale?ResumeLayoutLocaleSchema⬜️
margins?ResumeLayoutMarginsSchema⬜️
page?ResumeLayoutPageSchema⬜️
template?Template⬜️
typography?ResumeLayoutTypographySchema⬜️
latex?ResumeLayoutLaTeXSchema⬜️

ResumeLayoutLocaleSchema

Valida la configuración regional para i18n y l10n.

PropTipoRequeridoReglas de validación
language?LocaleLanguage⬜️Debe estar en locale language options

ResumeLayoutMarginsSchema

Valida márgenes de página.

PropTipoRequeridoReglas de validación
top?string⬜️ver margin size schema
bottom?string⬜️ver margin size schema
left?string⬜️ver margin size schema
right?string⬜️ver margin size schema

ResumeLayoutPageSchema

Valida opciones a nivel de página.

PropTipoRequeridoReglas
showPageNumbers?boolean⬜️true/false

ResumeLayoutTypographySchema

Valida opciones tipográficas.

PropTipoRequeridoReglas de validación
fontSize?string⬜️ver font size options

ResumeLayoutLaTeXSchema

Valida opciones específicas de LaTeX.

PropTipoRequeridoReglas de validación
fontspec?{ numbers?: FontspecNumbers }⬜️ver fontspec numbers options

Enum Validation Schemas

Country

Tipo unión que incluye todos los posibles países y regiones del mundo.

Reglas de validación:

  • Debe ser una de las opciones de país predefinidas
  • Ejemplos: United States, China, United Kingdom, Germany

Degree

Tipo unión que incluye todos los posibles grados académicos.

Reglas de validación:

  • Debe ser uno de: Associate, Bachelor, Diploma, Doctor, High School, Master, Middle School

Fluency

Tipo unión que incluye todos los posibles niveles de competencia lingüística.

Reglas de validación:

  • Debe ser uno de:
    • Elementary Proficiency
    • Full Professional Proficiency
    • Limited Working Proficiency
    • Minimum Professional Proficiency
    • Native or Bilingual Proficiency

Language

Tipo unión que incluye todos los idiomas soportados.

Reglas de validación:

  • Debe ser una de las opciones de idioma predefinidas
  • Ejemplos: English, Chinese, Spanish, French, German

Level

Tipo unión que incluye todos los posibles niveles de dominio de habilidades.

Reglas de validación:

  • Debe ser uno de: Advanced, Beginner, Expert, Intermediate, Master, Novice

Network

Tipo unión que incluye todas las posibles opciones de redes sociales.

Reglas de validación:

  • Debe ser una de las opciones de red predefinidas
  • Ejemplos: GitHub, LinkedIn, Twitter, Facebook, Instagram

Template

Tipo unión que incluye todas las posibles opciones de plantilla.

Reglas de validación:

  • Debe ser uno de: moderncv-banking, moderncv-casual, moderncv-classic
  • Ver también: templates

LocaleLanguage

Tipo unión que incluye todos los posibles códigos de lenguaje local.

Reglas de validación:

  • Debe ser uno de: en, es, zh-hans, zh-hant-hk, zh-hant-tw
  • Ver también: multi-languages

FontspecNumbers

Tipo unión que incluye todas las posibles opciones de números de fontspec de LaTeX.

Reglas de validación:

  • Debe ser uno de:
    • Auto - permite que el estilo se determine automáticamente según el LocaleLanguage seleccionado (por defecto)
    • Lining - cifras lining estándar (por defecto para idiomas CJK)
    • OldStyle - cifras old style con alturas variables (por defecto para idiomas latinos)

FontSize

Tipo unión que incluye todas las posibles opciones de tamaño de fuente.

Reglas de validación:

  • Debe ser uno de: 10pt, 11pt, 12pt
  • 10pt es el tamaño de fuente por defecto
Edit on GitHub

Last updated on