A Quarto + Typst implementation of Byungjin Park’s Awesome-CV. The Typst implementation part is inspired by Paul Tsouchlos’s modern-cv
If you would like to add the clean theme to an existing directory:
quarto install extension kazuyanagimoto/quarto-awesomecv-typst
or you can use a Quarto template that bundles a .qmd starter file:
quarto use template kazuyanagimoto/quarto-awesomecv-typst
Set author information in YAML.
author:
firstname: Albert
lastname: Einstein
address: "Rämistrasse 101, CH-8092 Zürich, Switzerland, Zürich"
position: "Research Physicist ・ Professor"
contacts:
- icon: fa envelope
text: ae@example.com
url: "mailto:ae@example.com"
- icon: PATH_TO_ICON/icon.svg
text: example.com
url: https://example.com
- fontawesome icons are supported
via duskmoon314/typst-fontawesome with
fa
prefix. - SVG icons can be used by specifying the path to the icon file (e.g., Google Scholar icon from Academicons)
You can set fonts and the accent color in YAML.
style:
color-accent: "516db0"
font-header: "Roboto"
font-text: "Source Sans Pro"
format:
awesomecv-typst:
font-paths: ["PATH_TO_FONT"]
By default, it uses the system fonts, but you can specify the font paths in the font-paths
field (e.g., GitHub Actions usage.)
You can set a profile photo in YAML. If you set it, the header will be left-aligned.
profile-photo: "PATH_TO_PHOTO/photo.jpg"
This format is designed to be used with an R package kazuyanagimoto/typstcv
.
It provides helper functions to create a resume entry from a data frame.
Please refer to the package documentation for more details.
library(typstcv)
educ <- data.frame(
title = c("Ph.D. in Physics", "Master of Science"),
location = c("Zürich, Switzerland", "Zürich, Switzerland"),
date = c("1905", "1896 - 1900"),
description = c("University of Zürich", "ETH")
)
resume_entry(educ)
#> ```{=typst}
#> #resume-entry(title: "Ph.D. in Physics",location: "Zürich, Switzerland",date: "1905",description: "University of Zürich",)
#> #resume-entry(title: "Master of Science",location: "Zürich, Switzerland",date: "1896 - 1900",description: "ETH",)
#> ```
award <- data.frame(
title = c("Nobel Prize in Physics"),
location = c("Stockholm, Sweden"),
date = c("1921"),
description = c("For his services to"),
detail1 = c("Theoretical Physics"),
detail2 = c("Discovery of the law of the photoelectric effect")
)
resume_entry(award, details = c("detail1", "detail2"))
#> #resume-entry(title: "Nobel Prize in Physics",location: "Stockholm, Sweden",date: "1921",description: "For his services to",)
#> #resume-item[
#> - Theoretical Physics
#> - Discovery of the law of the photoelectric effect
#> ]
work <- data.frame(
title = c("Technical Assistant", "Junior Professor", "Associate Professor"),
location = c("Bern, Switzerland", "Bern, Switzerland", "Zürich, Switzerland"),
start = as.Date(c("1902-01-01", "1908-01-01", "1909-01-01")),
end = as.Date(c("1908-01-01", "1909-01-01", "1911-01-01")),
description = c("Federal Patent Office", "University of Bern",
"University of Zürich")
)
work |>
format_date(end = "end", date_format = "%Y", sort_by = "start") |>
resume_entry()
#> ```{=typst}
#> #resume-entry(title: "Associate Professor",location: "Zürich, Switzerland",date: "1909 - 1911",description: "University of Zürich",)
#> #resume-entry(title: "Junior Professor",location: "Bern, Switzerland",date: "1908 - 1909",description: "University of Bern",)
#> #resume-entry(title: "Technical Assistant",location: "Bern, Switzerland",date: "1902 - 1908",description: "Federal Patent Office",)
#> ```