rendercv/schema.json

1406 lines
39 KiB
JSON
Raw Normal View History

2023-10-19 18:02:14 +00:00
{
"$defs": {
"ClassicThemeEntryAreaMargins": {
"properties": {
2023-11-17 00:04:29 +00:00
"left_and_right": {
2023-10-19 18:02:14 +00:00
"default": "0.2 cm",
"description": "The left margin of entry areas.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Left Margin",
"type": "string"
},
"vertical_between": {
"default": "0.12 cm",
"description": "The vertical margin between entry areas.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Vertical Margin Between Entry Areas",
"type": "string"
}
},
"title": "ClassicThemeEntryAreaMargins",
2023-10-27 19:09:19 +00:00
"type": "object",
"additionalProperties": false
2023-10-19 18:02:14 +00:00
},
2023-11-22 18:18:50 +00:00
"ClassicThemeHeaderMargins": {
"properties": {
"vertical_between_name_and_connections": {
"default": "0.2 cm",
"description": "The vertical margin between the name of the person and the connections.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Vertical Margin Between the Name and Connections",
"type": "string"
},
"bottom": {
"default": "0.2 cm",
"description": "The bottom margin of the header, i.e., the vertical margin between the connections and the first section title.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Bottom Margin",
"type": "string"
}
},
"title": "ClassicThemeHeaderMargins",
"type": "object",
"additionalProperties": false
},
2023-10-19 18:02:14 +00:00
"ClassicThemeHighlightsAreaMargins": {
"properties": {
"top": {
2023-11-29 16:44:30 +00:00
"default": "0.10 cm",
2023-10-19 18:02:14 +00:00
"description": "The top margin of highlights areas.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Top Margin",
"type": "string"
},
"left": {
2023-11-29 16:44:30 +00:00
"default": "0.4 cm",
2023-10-19 18:02:14 +00:00
"description": "The left margin of highlights areas.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Left Margin",
"type": "string"
},
"vertical_between_bullet_points": {
2023-11-29 16:44:30 +00:00
"default": "0.10 cm",
2023-10-19 18:02:14 +00:00
"description": "The vertical margin between bullet points.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Vertical Margin Between Bullet Points",
"type": "string"
}
},
"title": "ClassicThemeHighlightsAreaMargins",
2023-10-27 19:09:19 +00:00
"type": "object",
"additionalProperties": false
2023-10-19 18:02:14 +00:00
},
"ClassicThemeMargins": {
"properties": {
"page": {
"allOf": [
{
"$ref": "#/$defs/ClassicThemePageMargins"
}
],
"default": {
2024-02-06 17:40:39 +00:00
"top": "2 cm",
2023-11-29 16:44:30 +00:00
"bottom": "2 cm",
"left": "1.24 cm",
2024-02-06 17:40:39 +00:00
"right": "1.24 cm"
2023-10-19 18:02:14 +00:00
},
"description": "Page margins for the classic theme.",
"title": "Page Margins"
},
"section_title": {
"allOf": [
{
"$ref": "#/$defs/ClassicThemeSectionTitleMargins"
}
],
"default": {
2024-02-06 17:40:39 +00:00
"top": "0.2 cm",
"bottom": "0.2 cm"
2023-10-19 18:02:14 +00:00
},
"description": "Section title margins for the classic theme.",
"title": "Section Title Margins"
},
"entry_area": {
"allOf": [
{
"$ref": "#/$defs/ClassicThemeEntryAreaMargins"
}
],
"default": {
2023-11-17 00:04:29 +00:00
"left_and_right": "0.2 cm",
2023-10-19 18:02:14 +00:00
"vertical_between": "0.12 cm"
},
"description": "Entry area margins for the classic theme.",
"title": "Entry Area Margins"
},
"highlights_area": {
"allOf": [
{
"$ref": "#/$defs/ClassicThemeHighlightsAreaMargins"
}
],
"default": {
2023-11-29 16:44:30 +00:00
"top": "0.10 cm",
2024-02-06 17:40:39 +00:00
"left": "0.4 cm",
2023-11-29 16:44:30 +00:00
"vertical_between_bullet_points": "0.10 cm"
2023-10-19 18:02:14 +00:00
},
"description": "Highlights area margins for the classic theme.",
"title": "Highlights Area Margins"
2023-11-22 18:18:50 +00:00
},
"header": {
"allOf": [
{
"$ref": "#/$defs/ClassicThemeHeaderMargins"
}
],
"default": {
2024-02-06 17:40:39 +00:00
"vertical_between_name_and_connections": "0.2 cm",
"bottom": "0.2 cm"
2023-11-22 18:18:50 +00:00
},
"description": "Header margins for the classic theme.",
"title": "Header Margins"
2023-10-19 18:02:14 +00:00
}
},
"title": "ClassicThemeMargins",
2023-10-27 19:09:19 +00:00
"type": "object",
"additionalProperties": false
2023-10-19 18:02:14 +00:00
},
"ClassicThemeOptions": {
2024-02-14 16:39:28 +00:00
"additionalProperties": false,
2024-02-06 17:40:39 +00:00
"description": "",
2023-10-19 18:02:14 +00:00
"properties": {
2024-02-06 17:40:39 +00:00
"theme": {
"const": "classic",
"title": "Theme"
},
"font": {
"default": "SourceSans3",
"description": "The font of the CV.",
"enum": [
"SourceSans3",
"Roboto",
"EBGaramond"
],
"title": "Font",
"type": "string"
},
"font_size": {
"default": "10pt",
"description": "The font size of the CV. It can be 10pt, 11pt, or 12pt.",
"enum": [
"10pt",
"11pt",
"12pt"
],
"title": "Font Size",
"type": "string"
},
"page_size": {
"default": "a4paper",
"description": "The page size of the CV. It can be a4paper or letterpaper.",
"enum": [
"a4paper",
"letterpaper"
],
"title": "Page Size",
"type": "string"
},
2023-10-19 18:02:14 +00:00
"primary_color": {
"default": "rgb(0,79,144)",
"description": "The primary color of Classic Theme. It is used for the section titles, heading, and the links.\nThe color can be specified either with their [name](https://www.w3.org/TR/SVG11/types.html#ColorKeywords), hexadecimal value, RGB value, or HSL value.",
"examples": [
"Black",
"7fffd4",
"rgb(0,79,144)",
"hsl(270, 60%, 70%)"
],
"format": "color",
"title": "Primary Color",
"type": "string"
},
"date_and_location_width": {
2023-11-22 18:18:50 +00:00
"default": "4.1 cm",
2023-10-19 18:02:14 +00:00
"description": "The width of the date and location column.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Date and Location Column Width",
"type": "string"
},
2023-11-20 19:13:05 +00:00
"text_alignment": {
"default": "left-aligned",
"description": "The alignment of the text.",
"enum": [
"left-aligned",
"justified"
],
"title": "Text Alignment",
"type": "string"
},
2023-10-19 18:02:14 +00:00
"show_timespan_in": {
"default": [],
"description": "The time span will be shown in the date and location column in these sections. The input should be a list of strings.",
"items": {
"type": "string"
},
"title": "Show Time Span in These Sections",
"type": "array"
},
"show_last_updated_date": {
"default": true,
"description": "If this option is set to true, then the last updated date will be shown in the header.",
"title": "Show Last Updated Date",
"type": "boolean"
},
2023-11-24 17:36:30 +00:00
"header_font_size": {
"default": "30 pt",
"description": "The font size of the header (the name of the person).",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Header Font Size",
"type": "string"
},
2023-10-19 18:02:14 +00:00
"margins": {
"allOf": [
{
"$ref": "#/$defs/ClassicThemeMargins"
}
],
"default": {
2024-02-06 17:40:39 +00:00
"page": {
"bottom": "2 cm",
"left": "1.24 cm",
"right": "1.24 cm",
"top": "2 cm"
},
"section_title": {
"bottom": "0.2 cm",
"top": "0.2 cm"
},
2023-10-19 18:02:14 +00:00
"entry_area": {
2023-11-17 00:04:29 +00:00
"left_and_right": "0.2 cm",
2023-10-19 18:02:14 +00:00
"vertical_between": "0.12 cm"
},
"highlights_area": {
2023-11-29 16:44:30 +00:00
"left": "0.4 cm",
"top": "0.10 cm",
"vertical_between_bullet_points": "0.10 cm"
2023-10-19 18:02:14 +00:00
},
2024-02-06 17:40:39 +00:00
"header": {
2023-11-29 16:44:30 +00:00
"bottom": "0.2 cm",
2024-02-06 17:40:39 +00:00
"vertical_between_name_and_connections": "0.2 cm"
2023-10-19 18:02:14 +00:00
}
},
"description": "Page, section title, entry field, and highlights field margins.",
"title": "Margins"
}
},
2024-02-06 17:40:39 +00:00
"required": [
"theme"
],
2023-10-19 18:02:14 +00:00
"title": "ClassicThemeOptions",
2024-02-14 16:39:28 +00:00
"type": "object"
2023-10-19 18:02:14 +00:00
},
"ClassicThemePageMargins": {
"properties": {
"top": {
2023-11-29 16:44:30 +00:00
"default": "2 cm",
2023-10-19 18:02:14 +00:00
"description": "The top margin of the page with units.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Top Margin",
"type": "string"
},
"bottom": {
2023-11-29 16:44:30 +00:00
"default": "2 cm",
2023-10-19 18:02:14 +00:00
"description": "The bottom margin of the page with units.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Bottom Margin",
"type": "string"
},
"left": {
2023-11-29 16:44:30 +00:00
"default": "1.24 cm",
2023-10-19 18:02:14 +00:00
"description": "The left margin of the page with units.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Left Margin",
"type": "string"
},
"right": {
2023-11-29 16:44:30 +00:00
"default": "1.24 cm",
2023-10-19 18:02:14 +00:00
"description": "The right margin of the page with units.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Right Margin",
"type": "string"
}
},
"title": "ClassicThemePageMargins",
2023-10-27 19:09:19 +00:00
"type": "object",
"additionalProperties": false
2023-10-19 18:02:14 +00:00
},
"ClassicThemeSectionTitleMargins": {
"properties": {
"top": {
2023-11-29 16:44:30 +00:00
"default": "0.2 cm",
2023-10-19 18:02:14 +00:00
"description": "The top margin of section titles.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Top Margin",
"type": "string"
},
"bottom": {
2023-11-29 16:44:30 +00:00
"default": "0.2 cm",
2023-10-19 18:02:14 +00:00
"description": "The bottom margin of section titles.",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Bottom Margin",
"type": "string"
}
},
"title": "ClassicThemeSectionTitleMargins",
2023-10-27 19:09:19 +00:00
"type": "object",
"additionalProperties": false
2023-10-19 18:02:14 +00:00
},
"CurriculumVitae": {
2024-02-06 17:40:39 +00:00
"additionalProperties": false,
"description": "This class is the data model of the CV.",
2023-10-19 18:02:14 +00:00
"properties": {
"name": {
"description": "The name of the person.",
"title": "Name",
"type": "string"
},
"label": {
"default": null,
"description": "The label of the person.",
"title": "Label",
"allOf": [
{
"type": "string"
}
]
},
"location": {
"default": null,
"description": "The location of the person. This is not rendered currently.",
"title": "Location",
"allOf": [
{
"type": "string"
}
]
},
"email": {
"default": null,
2024-02-14 16:39:28 +00:00
"description": "The email of the person.",
2023-10-19 18:02:14 +00:00
"title": "Email",
"allOf": [
{
"format": "email",
"type": "string"
}
]
},
"phone": {
"default": null,
2024-02-14 16:39:28 +00:00
"description": "The phone number of the person.",
2023-10-19 18:02:14 +00:00
"title": "Phone",
"allOf": [
{
2024-02-06 17:40:39 +00:00
"format": "phone",
2023-10-19 18:02:14 +00:00
"maxLength": 64,
"minLength": 7,
"type": "string"
}
]
},
"website": {
"default": null,
2024-02-14 16:39:28 +00:00
"description": "The website of the person.",
2023-10-19 18:02:14 +00:00
"title": "Website",
"allOf": [
{
"format": "uri",
"maxLength": 2083,
"minLength": 1,
"type": "string"
}
]
},
"social_networks": {
"default": null,
2024-02-14 16:39:28 +00:00
"description": "The social networks of the person.",
2023-10-19 18:02:14 +00:00
"title": "Social Networks",
"allOf": [
{
"items": {
"$ref": "#/$defs/SocialNetwork"
},
"type": "array"
}
]
},
2024-02-06 17:40:39 +00:00
"sections": {
"additionalProperties": {
"anyOf": [
{
"discriminator": {
"mapping": {
"EducationEntry": "#/$defs/SectionWithEducationEntries",
"ExperienceEntry": "#/$defs/SectionWithExperienceEntries",
"NormalEntry": "#/$defs/SectionWithNormalEntries",
"OneLineEntry": "#/$defs/SectionWithOneLineEntries",
"PublicationEntry": "#/$defs/SectionWithPublicationEntries",
"TextEntry": "#/$defs/SectionWithTextEntries"
},
"propertyName": "entry_type"
},
"oneOf": [
{
"$ref": "#/$defs/SectionWithEducationEntries"
},
{
"$ref": "#/$defs/SectionWithExperienceEntries"
},
{
"$ref": "#/$defs/SectionWithNormalEntries"
},
{
"$ref": "#/$defs/SectionWithOneLineEntries"
},
{
"$ref": "#/$defs/SectionWithPublicationEntries"
},
{
"$ref": "#/$defs/SectionWithTextEntries"
}
]
},
{
"items": {
"anyOf": [
{
"$ref": "#/$defs/EducationEntry"
},
{
"$ref": "#/$defs/ExperienceEntry"
},
{
"$ref": "#/$defs/PublicationEntry"
},
{
"$ref": "#/$defs/NormalEntry"
},
{
"$ref": "#/$defs/OneLineEntry"
},
{
"type": "string"
}
]
},
"type": "array"
}
]
},
2023-10-19 18:02:14 +00:00
"default": null,
2024-02-06 17:40:39 +00:00
"description": "The sections of the CV.",
"title": "Sections",
"type": "object"
}
},
"required": [
"name"
],
"title": "CurriculumVitae",
"type": "object"
},
"EducationEntry": {
"additionalProperties": false,
"description": "This class is the data model of `EducationEntry`.",
"properties": {
"start_date": {
2024-02-14 16:39:28 +00:00
"default": "2000-01-01",
2024-02-06 17:40:39 +00:00
"description": "The start date of the event in YYYY-MM-DD, YYYY-MM, or YYYY format.",
"examples": [
"2020-09-24"
],
"title": "Start Date",
"oneOf": [
{
"type": "integer"
},
2023-10-19 18:02:14 +00:00
{
2024-02-06 17:40:39 +00:00
"pattern": "\\d{4}-\\d{2}(-\\d{2})?",
2023-10-19 18:02:14 +00:00
"type": "string"
2024-02-06 17:40:39 +00:00
},
2023-10-19 18:02:14 +00:00
{
2024-02-06 17:40:39 +00:00
"type": "null"
2023-10-19 18:02:14 +00:00
}
]
},
2024-02-06 17:40:39 +00:00
"end_date": {
2024-02-14 16:39:28 +00:00
"default": "2020-01-01",
2024-02-06 17:40:39 +00:00
"description": "The end date of the event in YYYY-MM-DD, YYYY-MM, or YYYY format. If the event is still ongoing, then type \"present\" or provide only the start date.",
"examples": [
"2020-09-24",
"present"
],
"title": "End Date",
"oneOf": [
2023-10-19 18:02:14 +00:00
{
2024-02-06 17:40:39 +00:00
"const": "present"
},
2023-10-27 20:51:24 +00:00
{
2024-02-06 17:40:39 +00:00
"type": "integer"
},
{
"pattern": "\\d{4}-\\d{2}(-\\d{2})?",
"type": "string"
},
{
"type": "null"
2023-10-27 20:51:24 +00:00
}
]
},
2024-02-06 17:40:39 +00:00
"date": {
2024-02-14 16:39:28 +00:00
"default": "Custom Date or 2020-01-01",
2024-02-06 17:40:39 +00:00
"description": "If the event is a one-day event, then this field should be filled in YYYY-MM-DD format. If the event is a multi-day event, then the start date and end date should be provided instead. All of them can't be provided at the same time.",
"examples": [
"2020-09-24",
"My Custom Date"
],
"title": "Date",
"oneOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "null"
2023-10-19 18:02:14 +00:00
}
]
},
2024-02-06 17:40:39 +00:00
"highlights": {
2023-10-27 20:51:24 +00:00
"default": null,
2024-02-06 17:40:39 +00:00
"description": "The highlights of the event as a list of strings.",
"examples": [
"Did this.",
"Did that."
],
"title": "Highlights",
2023-10-27 20:51:24 +00:00
"allOf": [
{
"items": {
2024-02-06 17:40:39 +00:00
"type": "string"
2023-10-27 20:51:24 +00:00
},
"type": "array"
}
]
},
2024-02-06 17:40:39 +00:00
"location": {
2023-10-19 18:02:14 +00:00
"default": null,
2024-02-06 17:40:39 +00:00
"description": "The location of the event.",
"examples": [
2024-02-14 16:39:28 +00:00
"Istanbul, T\u00fcrkiye"
2024-02-06 17:40:39 +00:00
],
"title": "Location",
2023-10-19 18:02:14 +00:00
"allOf": [
{
2024-02-06 17:40:39 +00:00
"type": "string"
2023-10-19 18:02:14 +00:00
}
]
},
2024-02-06 17:40:39 +00:00
"institution": {
"description": "The institution name. It will be shown as bold text.",
"title": "Institution",
"type": "string"
},
"area": {
"description": "The area of study. It will be shown as normal text.",
"title": "Area",
"type": "string"
},
"degree": {
2024-02-14 16:39:28 +00:00
"default": "PhD",
2024-02-06 17:40:39 +00:00
"description": "The type of the degree.",
"examples": [
"BS",
"BA",
"PhD",
"MS"
],
"title": "Degree",
2023-10-19 18:02:14 +00:00
"allOf": [
{
2024-02-06 17:40:39 +00:00
"type": "string"
2023-10-19 18:02:14 +00:00
}
]
2024-02-06 17:40:39 +00:00
}
},
"required": [
"institution",
"area"
],
"title": "EducationEntry",
"type": "object"
},
"ExperienceEntry": {
"additionalProperties": false,
"description": "This class is the data model of `ExperienceEntry`.",
"properties": {
"start_date": {
2024-02-14 16:39:28 +00:00
"default": "2000-01-01",
2024-02-06 17:40:39 +00:00
"description": "The start date of the event in YYYY-MM-DD, YYYY-MM, or YYYY format.",
"examples": [
"2020-09-24"
],
"title": "Start Date",
"oneOf": [
2023-10-19 18:02:14 +00:00
{
2024-02-06 17:40:39 +00:00
"type": "integer"
},
{
"pattern": "\\d{4}-\\d{2}(-\\d{2})?",
"type": "string"
},
{
"type": "null"
2023-10-19 18:02:14 +00:00
}
]
},
2024-02-06 17:40:39 +00:00
"end_date": {
2024-02-14 16:39:28 +00:00
"default": "2020-01-01",
2024-02-06 17:40:39 +00:00
"description": "The end date of the event in YYYY-MM-DD, YYYY-MM, or YYYY format. If the event is still ongoing, then type \"present\" or provide only the start date.",
2023-10-19 18:02:14 +00:00
"examples": [
"2020-09-24",
"present"
],
2024-02-06 17:40:39 +00:00
"title": "End Date",
2023-10-19 18:02:14 +00:00
"oneOf": [
{
2024-02-06 17:40:39 +00:00
"const": "present"
2023-10-19 18:02:14 +00:00
},
{
2024-02-06 17:40:39 +00:00
"type": "integer"
2023-10-19 18:02:14 +00:00
},
{
2024-02-06 17:40:39 +00:00
"pattern": "\\d{4}-\\d{2}(-\\d{2})?",
2023-11-03 20:35:50 +00:00
"type": "string"
2023-10-19 18:02:14 +00:00
},
{
"type": "null"
}
2024-02-06 17:40:39 +00:00
]
2023-10-19 18:02:14 +00:00
},
"date": {
2024-02-14 16:39:28 +00:00
"default": "Custom Date or 2020-01-01",
2023-10-19 18:02:14 +00:00
"description": "If the event is a one-day event, then this field should be filled in YYYY-MM-DD format. If the event is a multi-day event, then the start date and end date should be provided instead. All of them can't be provided at the same time.",
"examples": [
"2020-09-24",
"My Custom Date"
2024-02-06 17:40:39 +00:00
],
"title": "Date",
2023-10-19 18:02:14 +00:00
"oneOf": [
2024-02-06 17:40:39 +00:00
{
"type": "integer"
},
2023-10-19 18:02:14 +00:00
{
"type": "string"
},
{
"type": "null"
}
2024-02-06 17:40:39 +00:00
]
2023-10-19 18:02:14 +00:00
},
"highlights": {
2024-02-06 17:40:39 +00:00
"default": null,
"description": "The highlights of the event as a list of strings.",
2023-10-19 18:02:14 +00:00
"examples": [
"Did this.",
"Did that."
],
"title": "Highlights",
"allOf": [
{
"items": {
"type": "string"
},
"type": "array"
}
]
},
"location": {
"default": null,
2024-02-06 17:40:39 +00:00
"description": "The location of the event.",
2023-10-19 18:02:14 +00:00
"examples": [
2024-02-14 16:39:28 +00:00
"Istanbul, T\u00fcrkiye"
2023-10-19 18:02:14 +00:00
],
"title": "Location",
"allOf": [
{
"type": "string"
}
]
},
2024-02-06 17:40:39 +00:00
"company": {
"description": "The company name. It will be shown as bold text.",
"title": "Company",
2023-10-19 18:02:14 +00:00
"type": "string"
},
2024-02-06 17:40:39 +00:00
"position": {
"description": "The position. It will be shown as normal text.",
"title": "Position",
2023-10-19 18:02:14 +00:00
"type": "string"
}
},
"required": [
2024-02-06 17:40:39 +00:00
"company",
"position"
2023-10-19 18:02:14 +00:00
],
2024-02-06 17:40:39 +00:00
"title": "ExperienceEntry",
"type": "object"
2023-10-19 18:02:14 +00:00
},
2024-02-11 18:35:32 +00:00
"McdowellThemeOptions": {
2024-02-14 16:39:28 +00:00
"additionalProperties": false,
2024-02-11 18:35:32 +00:00
"description": "",
"properties": {
"theme": {
"const": "mcdowell",
"title": "Theme"
}
},
"required": [
"theme"
],
"title": "McdowellThemeOptions",
2024-02-14 16:39:28 +00:00
"type": "object"
2024-02-11 18:35:32 +00:00
},
"ModerncvThemeOptions": {
2024-02-14 16:39:28 +00:00
"additionalProperties": false,
2024-02-11 18:35:32 +00:00
"description": "",
"properties": {
"theme": {
"const": "moderncv",
"title": "Theme"
},
"font_size": {
"default": "10pt",
"description": "The font size of the CV. The default value is \"10pt\".",
"enum": [
"10pt",
"11pt",
"12pt"
],
"examples": [
"10pt",
"11pt",
"12pt"
],
"title": "Font Size",
"type": "string"
},
"page_size": {
"default": "a4paper",
"description": "The page size of the CV. The default value is \"a4paper\".",
"enum": [
"a4paper",
"letterpaper"
],
"examples": [
"a4paper",
"letterpaper"
],
"title": "Page Size",
"type": "string"
},
"moderncv_style": {
"default": "classic",
"description": "The style of the moderncv theme. The default value is \"classic\".",
"examples": [
"casual",
"classic",
"banking",
"oldstyle",
"fancy"
],
"title": "ModernCV Style",
"oneOf": [
{
"const": "casual"
},
{
"const": "classic"
},
{
"const": "banking"
},
{
"const": "oldstyle"
},
{
"const": "fancy"
}
]
},
"color": {
"default": "blue",
"description": "The primary color of the CV. The default value is \"blue\".",
"examples": [
"blue",
"black",
"burgundy",
"green",
"grey",
"orange",
"purple",
"red"
],
"title": "Primary Color",
"oneOf": [
{
"const": "blue"
},
{
"const": "black"
},
{
"const": "burgundy"
},
{
"const": "green"
},
{
"const": "grey"
},
{
"const": "orange"
},
{
"const": "purple"
},
{
"const": "red"
}
]
},
"date_width": {
"default": "3.8 cm",
"description": "The width of the date column. The default value is \"3.8 cm\".",
"pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)",
"title": "Date and Location Column Width",
"type": "string"
},
"content_scale": {
"default": 0.75,
"description": "The scale of the content with respect to the page size. The default value is \"0.75\".",
"title": "Content Scale",
"type": "number"
},
"show_only_years": {
"default": false,
"description": "If \"True\", only the years will be shown in the date column. The default value is \"False\".",
"title": "Show Only Years",
"type": "boolean"
},
"disable_page_numbers": {
"default": false,
"description": "If \"True\", the page numbers will be disabled. The default value is \"False\".",
"title": "Disable Page Numbers",
"type": "boolean"
}
},
"required": [
"theme"
],
"title": "ModerncvThemeOptions",
2024-02-14 16:39:28 +00:00
"type": "object"
2024-02-11 18:35:32 +00:00
},
2024-02-06 17:40:39 +00:00
"NormalEntry": {
"additionalProperties": false,
"description": "This class is the data model of `NormalEntry`.",
2023-10-19 18:02:14 +00:00
"properties": {
"start_date": {
2024-02-14 16:39:28 +00:00
"default": "2000-01-01",
2024-02-06 17:40:39 +00:00
"description": "The start date of the event in YYYY-MM-DD, YYYY-MM, or YYYY format.",
2023-10-19 18:02:14 +00:00
"examples": [
"2020-09-24"
],
"title": "Start Date",
2024-02-06 17:40:39 +00:00
"oneOf": [
2023-10-19 18:02:14 +00:00
{
2024-02-06 17:40:39 +00:00
"type": "integer"
},
{
"pattern": "\\d{4}-\\d{2}(-\\d{2})?",
2023-10-19 18:02:14 +00:00
"type": "string"
2024-02-06 17:40:39 +00:00
},
{
"type": "null"
2023-10-19 18:02:14 +00:00
}
]
},
"end_date": {
2024-02-14 16:39:28 +00:00
"default": "2020-01-01",
2024-02-06 17:40:39 +00:00
"description": "The end date of the event in YYYY-MM-DD, YYYY-MM, or YYYY format. If the event is still ongoing, then type \"present\" or provide only the start date.",
"examples": [
"2020-09-24",
"present"
],
"title": "End Date",
2023-10-19 18:02:14 +00:00
"oneOf": [
{
2023-11-03 20:35:50 +00:00
"const": "present"
2023-10-19 18:02:14 +00:00
},
{
2024-02-06 17:40:39 +00:00
"type": "integer"
},
{
"pattern": "\\d{4}-\\d{2}(-\\d{2})?",
2023-11-03 20:35:50 +00:00
"type": "string"
2023-10-19 18:02:14 +00:00
},
{
"type": "null"
}
2024-02-06 17:40:39 +00:00
]
2023-10-19 18:02:14 +00:00
},
"date": {
2024-02-14 16:39:28 +00:00
"default": "Custom Date or 2020-01-01",
2024-02-06 17:40:39 +00:00
"description": "If the event is a one-day event, then this field should be filled in YYYY-MM-DD format. If the event is a multi-day event, then the start date and end date should be provided instead. All of them can't be provided at the same time.",
2023-10-19 18:02:14 +00:00
"examples": [
2024-02-06 17:40:39 +00:00
"2020-09-24",
"My Custom Date"
2023-10-19 18:02:14 +00:00
],
2024-02-06 17:40:39 +00:00
"title": "Date",
"oneOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "null"
}
]
2023-10-19 18:02:14 +00:00
},
"highlights": {
2024-02-06 17:40:39 +00:00
"default": null,
"description": "The highlights of the event as a list of strings.",
2023-10-19 18:02:14 +00:00
"examples": [
"Did this.",
"Did that."
],
"title": "Highlights",
"allOf": [
{
"items": {
"type": "string"
},
"type": "array"
}
]
},
"location": {
"default": null,
2024-02-06 17:40:39 +00:00
"description": "The location of the event.",
2023-10-19 18:02:14 +00:00
"examples": [
2024-02-14 16:39:28 +00:00
"Istanbul, T\u00fcrkiye"
2023-10-19 18:02:14 +00:00
],
"title": "Location",
"allOf": [
{
"type": "string"
}
]
},
2024-02-06 17:40:39 +00:00
"name": {
"description": "The name of the entry. It will be shown as bold text.",
"title": "Name",
"type": "string"
}
},
"required": [
"name"
],
"title": "NormalEntry",
"type": "object"
},
"OneLineEntry": {
"additionalProperties": false,
"description": "This class is the data model of `OneLineEntry`.",
"properties": {
"name": {
"description": "The name of the entry. It will be shown as bold text.",
"title": "Name",
"type": "string"
},
"details": {
"description": "The details of the entry. It will be shown as normal text.",
"title": "Details",
"type": "string"
}
},
"required": [
"name",
"details"
],
"title": "OneLineEntry",
"type": "object"
},
"PublicationEntry": {
"additionalProperties": false,
"description": "This class is the data model of `PublicationEntry`.",
"properties": {
2023-10-19 18:02:14 +00:00
"title": {
"description": "The title of the publication. It will be shown as bold text.",
"title": "Title of the Publication",
"type": "string"
},
"authors": {
"description": "The authors of the publication in order as a list of strings.",
"items": {
"type": "string"
},
"title": "Authors",
"type": "array"
},
"doi": {
"description": "The DOI of the publication.",
"examples": [
"10.48550/arXiv.2310.03138"
],
"title": "DOI",
"type": "string"
},
2024-02-06 17:40:39 +00:00
"date": {
2024-02-14 16:39:28 +00:00
"default": "2020-01-01",
2024-02-06 17:40:39 +00:00
"description": "The date of the publication in YYYY-MM-DD, YYYY-MM, or YYYY format.",
"examples": [
"2021-10-31",
"2010"
],
"title": "Publication Date",
"oneOf": [
{
"pattern": "\\d{4}-\\d{2}(-\\d{2})?",
"type": "string"
2023-10-19 18:02:14 +00:00
}
]
},
"journal": {
"default": null,
"description": "The journal or the conference name.",
"title": "Journal",
"allOf": [
{
"type": "string"
}
]
}
},
"required": [
"title",
"authors",
2024-02-06 17:40:39 +00:00
"doi",
"date"
2023-10-19 18:02:14 +00:00
],
"title": "PublicationEntry",
2024-02-06 17:40:39 +00:00
"type": "object"
2023-10-19 18:02:14 +00:00
},
"SectionWithEducationEntries": {
2024-02-06 17:40:39 +00:00
"additionalProperties": false,
"description": "This class is the data model of the section with `EducationEntry`s.",
2023-10-19 18:02:14 +00:00
"properties": {
"title": {
"default": null,
2024-02-06 17:40:39 +00:00
"title": "Title",
"allOf": [
{
"type": "string"
}
]
},
2023-10-19 18:02:14 +00:00
"entry_type": {
"const": "EducationEntry",
2023-10-19 18:02:14 +00:00
"description": "The type of the entries in the section.",
"title": "Entry Type"
},
"entries": {
"description": "The entries of the section. The format depends on the entry type.",
"items": {
"$ref": "#/$defs/EducationEntry"
},
"title": "Entries",
"type": "array"
}
},
"required": [
"entry_type",
"entries"
],
"title": "SectionWithEducationEntries",
2024-02-06 17:40:39 +00:00
"type": "object"
},
"SectionWithExperienceEntries": {
2024-02-06 17:40:39 +00:00
"additionalProperties": false,
"description": "This class is the data model of the section with `ExperienceEntry`s.",
"properties": {
"title": {
2023-10-19 18:02:14 +00:00
"default": null,
2024-02-06 17:40:39 +00:00
"title": "Title",
2023-10-19 18:02:14 +00:00
"allOf": [
{
"type": "string"
}
]
},
"entry_type": {
"const": "ExperienceEntry",
"description": "The type of the entries in the section.",
"title": "Entry Type"
},
2023-10-19 18:02:14 +00:00
"entries": {
"description": "The entries of the section. The format depends on the entry type.",
"items": {
"$ref": "#/$defs/ExperienceEntry"
},
"title": "Entries",
"type": "array"
}
},
"required": [
"entry_type",
"entries"
],
"title": "SectionWithExperienceEntries",
2024-02-06 17:40:39 +00:00
"type": "object"
},
"SectionWithNormalEntries": {
2024-02-06 17:40:39 +00:00
"additionalProperties": false,
"description": "This class is the data model of the section with `NormalEntry`s.",
"properties": {
"title": {
"default": null,
2024-02-06 17:40:39 +00:00
"title": "Title",
"allOf": [
{
"type": "string"
}
]
},
"entry_type": {
"const": "NormalEntry",
"description": "The type of the entries in the section.",
"title": "Entry Type"
},
"entries": {
"description": "The entries of the section. The format depends on the entry type.",
"items": {
"$ref": "#/$defs/NormalEntry"
},
"title": "Entries",
"type": "array"
}
},
"required": [
"entry_type",
"entries"
],
"title": "SectionWithNormalEntries",
2024-02-06 17:40:39 +00:00
"type": "object"
},
"SectionWithOneLineEntries": {
2024-02-06 17:40:39 +00:00
"additionalProperties": false,
"description": "This class is the data model of the section with `OneLineEntry`s.",
"properties": {
"title": {
"default": null,
2024-02-06 17:40:39 +00:00
"title": "Title",
"allOf": [
{
"type": "string"
}
]
},
"entry_type": {
"const": "OneLineEntry",
"description": "The type of the entries in the section.",
"title": "Entry Type"
},
"entries": {
"description": "The entries of the section. The format depends on the entry type.",
"items": {
"$ref": "#/$defs/OneLineEntry"
},
"title": "Entries",
"type": "array"
}
},
"required": [
"entry_type",
"entries"
],
"title": "SectionWithOneLineEntries",
2024-02-06 17:40:39 +00:00
"type": "object"
},
"SectionWithPublicationEntries": {
2024-02-06 17:40:39 +00:00
"additionalProperties": false,
"description": "This class is the data model of the section with `PublicationEntry`s.",
"properties": {
"title": {
"default": null,
2024-02-06 17:40:39 +00:00
"title": "Title",
"allOf": [
{
"type": "string"
}
]
},
"entry_type": {
"const": "PublicationEntry",
"description": "The type of the entries in the section.",
"title": "Entry Type"
},
"entries": {
"description": "The entries of the section. The format depends on the entry type.",
"items": {
"$ref": "#/$defs/PublicationEntry"
2023-10-19 18:02:14 +00:00
},
"title": "Entries",
"type": "array"
}
},
"required": [
"entry_type",
"entries"
],
"title": "SectionWithPublicationEntries",
2024-02-06 17:40:39 +00:00
"type": "object"
},
"SectionWithTextEntries": {
"additionalProperties": false,
"description": "This class is the data model of the section with `TextEntry`s.",
"properties": {
"title": {
"default": null,
"title": "Title",
"allOf": [
{
"type": "string"
}
]
},
"entry_type": {
"const": "TextEntry",
"description": "The type of the entries in the section.",
"title": "Entry Type"
},
"entries": {
"description": "The entries of the section. The format depends on the entry type.",
"items": {
"type": "string"
},
"title": "Entries",
"type": "array"
}
},
"required": [
"entry_type",
"entries"
],
"title": "SectionWithTextEntries",
"type": "object"
2023-10-19 18:02:14 +00:00
},
"SocialNetwork": {
2024-02-06 17:40:39 +00:00
"additionalProperties": false,
"description": "This class is the data model of a social network.",
2023-10-19 18:02:14 +00:00
"properties": {
"network": {
"description": "The social network name.",
"enum": [
"LinkedIn",
"GitHub",
2023-10-23 16:27:44 +00:00
"Instagram",
2024-02-06 17:40:39 +00:00
"Orcid",
"Mastodon",
"Twitter"
2023-10-19 18:02:14 +00:00
],
"title": "Social Network",
"type": "string"
},
"username": {
"description": "The username of the social network. The link will be generated.",
"title": "Username",
"type": "string"
}
},
"required": [
"network",
"username"
],
"title": "SocialNetwork",
2024-02-06 17:40:39 +00:00
"type": "object"
2023-10-19 18:02:14 +00:00
}
},
2024-02-06 17:40:39 +00:00
"additionalProperties": false,
"description": "RenderCV data model.",
2023-10-19 18:02:14 +00:00
"properties": {
2024-02-06 17:40:39 +00:00
"cv": {
2023-10-19 18:02:14 +00:00
"allOf": [
{
2024-02-06 17:40:39 +00:00
"$ref": "#/$defs/CurriculumVitae"
2023-10-19 18:02:14 +00:00
}
],
2024-02-06 17:40:39 +00:00
"description": "The data of the CV.",
"title": "Curriculum Vitae"
},
"design": {
2024-02-11 18:35:32 +00:00
"anyOf": [
{
"discriminator": {
"mapping": {
"classic": "#/$defs/ClassicThemeOptions",
"mcdowell": "#/$defs/McdowellThemeOptions",
"moderncv": "#/$defs/ModerncvThemeOptions"
},
"propertyName": "theme"
},
"oneOf": [
{
"$ref": "#/$defs/ClassicThemeOptions"
},
{
"$ref": "#/$defs/ModerncvThemeOptions"
},
{
"$ref": "#/$defs/McdowellThemeOptions"
}
]
},
{}
],
2024-02-09 19:14:17 +00:00
"default": {
"theme": "classic",
"font": "SourceSans3",
"font_size": "10pt",
"page_size": "a4paper",
"primary_color": "#004f90",
"date_and_location_width": "4.1 cm",
"text_alignment": "left-aligned",
"show_timespan_in": [],
"show_last_updated_date": true,
"header_font_size": "30 pt",
"margins": {
"entry_area": {
"left_and_right": "0.2 cm",
"vertical_between": "0.12 cm"
},
"header": {
"bottom": "0.2 cm",
"vertical_between_name_and_connections": "0.2 cm"
},
"highlights_area": {
"left": "0.4 cm",
"top": "0.10 cm",
"vertical_between_bullet_points": "0.10 cm"
},
"page": {
"bottom": "2 cm",
"left": "1.24 cm",
"right": "1.24 cm",
"top": "2 cm"
},
"section_title": {
"bottom": "0.2 cm",
"top": "0.2 cm"
}
}
},
2024-02-06 17:40:39 +00:00
"description": "The design information of the CV.",
"title": "Design"
2023-10-19 18:02:14 +00:00
}
},
2024-02-06 17:40:39 +00:00
"required": [
2024-02-09 19:14:17 +00:00
"cv"
2024-02-06 17:40:39 +00:00
],
"title": "RenderCV",
2023-10-19 18:02:14 +00:00
"type": "object",
"$id": "https://raw.githubusercontent.com/sinaatalay/rendercv/main/schema.json",
"$schema": "http://json-schema.org/draft-07/schema#"
}