├── .gitignore ├── previews ├── bw.png ├── beige.png ├── blue.png ├── coral.png ├── earth.png ├── gray.png ├── onyx.png ├── plain.png ├── framed.png └── minimal.png ├── images └── dummy_pp.jpg ├── fonts ├── Archivo-Regular.ttf ├── Archivo-SemiBold.ttf ├── NunitoSans-Italic.ttf ├── NunitoSans-Regular.ttf └── NunitoSans-SemiBold.ttf ├── texlive.profile ├── LICENSE ├── Dockerfile ├── Cover-Letter-Template.tex ├── cover-letter-themes ├── plain.tex ├── beige.tex ├── coral.tex ├── framed.tex ├── earth.tex ├── minimal.tex ├── gray.tex ├── bw.tex ├── onyx.tex ├── blue.tex └── theme_selection.tex ├── README.md ├── cv-themes ├── beige.tex ├── minimal.tex ├── blue.tex ├── plain.tex ├── bw.tex ├── coral.tex ├── framed.tex ├── gray.tex ├── earth.tex ├── onyx.tex └── theme_selection.tex └── CV-Template.tex /.gitignore: -------------------------------------------------------------------------------- 1 | *.out 2 | *.pdf 3 | *.aux 4 | *.log 5 | -------------------------------------------------------------------------------- /previews/bw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/previews/bw.png -------------------------------------------------------------------------------- /previews/beige.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/previews/beige.png -------------------------------------------------------------------------------- /previews/blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/previews/blue.png -------------------------------------------------------------------------------- /previews/coral.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/previews/coral.png -------------------------------------------------------------------------------- /previews/earth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/previews/earth.png -------------------------------------------------------------------------------- /previews/gray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/previews/gray.png -------------------------------------------------------------------------------- /previews/onyx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/previews/onyx.png -------------------------------------------------------------------------------- /previews/plain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/previews/plain.png -------------------------------------------------------------------------------- /images/dummy_pp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/images/dummy_pp.jpg -------------------------------------------------------------------------------- /previews/framed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/previews/framed.png -------------------------------------------------------------------------------- /previews/minimal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/previews/minimal.png -------------------------------------------------------------------------------- /fonts/Archivo-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/fonts/Archivo-Regular.ttf -------------------------------------------------------------------------------- /fonts/Archivo-SemiBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/fonts/Archivo-SemiBold.ttf -------------------------------------------------------------------------------- /fonts/NunitoSans-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/fonts/NunitoSans-Italic.ttf -------------------------------------------------------------------------------- /fonts/NunitoSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/fonts/NunitoSans-Regular.ttf -------------------------------------------------------------------------------- /fonts/NunitoSans-SemiBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/antkr10/tex-cvbuilder/HEAD/fonts/NunitoSans-SemiBold.ttf -------------------------------------------------------------------------------- /texlive.profile: -------------------------------------------------------------------------------- 1 | # texlive.profile written on Sun Jan 24 17:39:51 2021 UTC 2 | # It will NOT be updated and reflects only the 3 | # installation profile at installation time. 4 | selected_scheme scheme-custom 5 | TEXDIR /usr/local/texlive/2020 6 | TEXMFCONFIG ~/.texlive2020/texmf-config 7 | TEXMFHOME ~/texmf 8 | TEXMFLOCAL /usr/local/texlive/texmf-local 9 | TEXMFSYSCONFIG /usr/local/texlive/2020/texmf-config 10 | TEXMFSYSVAR /usr/local/texlive/2020/texmf-var 11 | TEXMFVAR ~/.texlive2020/texmf-var 12 | binary_x86_64-linux 1 13 | collection-basic 1 14 | collection-latex 1 15 | instopt_adjustpath 0 16 | instopt_adjustrepo 1 17 | instopt_letter 0 18 | instopt_portable 0 19 | instopt_write18_restricted 1 20 | tlpdbopt_autobackup 1 21 | tlpdbopt_backupdir tlpkg/backups 22 | tlpdbopt_create_formats 1 23 | tlpdbopt_desktop_integration 1 24 | tlpdbopt_file_assocs 1 25 | tlpdbopt_generate_updmap 0 26 | tlpdbopt_install_docfiles 0 27 | tlpdbopt_install_srcfiles 0 28 | tlpdbopt_post_code 1 29 | tlpdbopt_sys_bin /usr/local/bin 30 | tlpdbopt_sys_info /usr/local/share/info 31 | tlpdbopt_sys_man /usr/local/share/man 32 | tlpdbopt_w32_multi_user 1 33 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 antkr10 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ubuntu:bionic 2 | 3 | # update the system 4 | RUN apt-get -qq update 5 | # install required in our templates tools and fonts 6 | RUN apt-get -y -q install wget perl unzip fontconfig 7 | 8 | # copy custom texlive.profile to container 9 | COPY texlive.profile / 10 | 11 | # install TexLive using the profile 12 | RUN wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz; \ 13 | mkdir /install-tl-unx; \ 14 | tar -xvf install-tl-unx.tar.gz -C /install-tl-unx --strip-components=1; \ 15 | /install-tl-unx/install-tl -profile /texlive.profile; \ 16 | rm -r /install-tl-unx; \ 17 | rm install-tl-unx.tar.gz 18 | 19 | # set up working directory and used volume 20 | ENV PATH="/usr/local/texlive/2020/bin/x86_64-linux:${PATH}" 21 | RUN wget http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh; \ 22 | chmod +x update-tlmgr-latest.sh; \ 23 | /update-tlmgr-latest.sh; \ 24 | rm /update-tlmgr-latest.sh; \ 25 | tlmgr install xetex etoolbox xifthen ifmtarg microtype fontspec pgf parskip setspace multirow fontawesome5 progressbar titlesec enumitem tcolorbox environ listings paracol booktabs pagecolor lipsum xkeyval collectbox adjustbox 26 | ENV HOME /tex-cvbuilder 27 | WORKDIR /tex-cvbuilder 28 | -------------------------------------------------------------------------------- /Cover-Letter-Template.tex: -------------------------------------------------------------------------------- 1 | \documentclass[10pt, a4paper]{article} 2 | 3 | \input{cover-letter-themes/theme_selection} 4 | 5 | %---------------------------------------------------------------------------------------- 6 | % THEMES 7 | %---------------------------------------------------------------------------------------- 8 | 9 | % Define the desired theme out of the following: beige, blue, bw, coral, earth, framed, gray, minimal, onyx, plain 10 | % See screenshots in preview/ directory 11 | \theme{beige} 12 | 13 | %---------------------------------------------------------------------------------------- 14 | % PERSONAL INFORMATION 15 | %---------------------------------------------------------------------------------------- 16 | 17 | % If you don't need a particular field, just remove the content leaving the command, e.g. \jobtitle{} 18 | 19 | \name{Name Surname} % Your name 20 | \jobtitle{Job Title} % Job title/career 21 | \location{City, State} % Address/location 22 | \phone{080-3345-443} % Phone number 23 | \mail{email@domain.com} % Mail 24 | \employerinfo{Hiring Manager's Name \\ 25 | 912 Company Address \\ 26 | City, State Zip Code \\ 27 | 517-444-6098 \\ 28 | hiring.manager@gmail.com} % Contact information of the employer. Make sure to end every row with "\\" 29 | 30 | \begin{document} 31 | 32 | \makeprofile % Print name & job description 33 | 34 | \makecontact % Print defined contact information 35 | 36 | \today % Command for inserting today's date. 37 | 38 | \letterspace % Command for adding larger vertical space 39 | \makeemployerinfo % Print employer contact information 40 | 41 | Dear Mr./Ms. Lastname, 42 | 43 | \lipsum[3][7-10] % Command to generate dummy text 44 | 45 | \begin{itemize} 46 | \item \lipsum*[1][7-8] 47 | \item \lipsum*[6][7-10] 48 | \item \lipsum*[5][7-9] 49 | \end{itemize} 50 | 51 | \lipsum[12-13] 52 | 53 | \letterspace 54 | Sincerely, 55 | 56 | \letterspace 57 | Your Name 58 | 59 | \end{document} 60 | -------------------------------------------------------------------------------- /cover-letter-themes/plain.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{bodytitle}{HTML}{191717} 4 | \definecolor{bodytext}{HTML}{191717} 5 | \definecolor{bulletcolor}{HTML}{191717} 6 | \definecolor{linkcolor}{HTML}{086375} 7 | \definecolor{linecolor}{HTML}{191717} 8 | \definecolor{name}{HTML}{191717} 9 | \definecolor{jobtitle}{HTML}{191717} 10 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 11 | 12 | % Defining font styles 13 | \newcommand{\sname}{\color{name}\fontsize{36pt}{36pt}\sffamily} 14 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{18pt}{18pt}\sffamily\addfontfeature{LetterSpace=2}} 15 | 16 | % Defining page styles 17 | \pagestyle{fancy} 18 | \fancyhf{} 19 | \renewcommand{\headrulewidth}{0pt} 20 | \renewcommand{\footrulewidth}{0pt} 21 | \fancyhead[C]{% 22 | \begin{tikzpicture}[remember picture,overlay] 23 | \draw [line width=2pt, color=linecolor] ($(current page.north west)+(1,-5cm)$) -- ($(current page.north east)-(5.5,5cm)$); 24 | \draw [line width=2pt, color=linecolor] ($(current page.north west)+(15.5cm,-1cm)$) -- ($(current page.south west)+(15.5cm,1cm)$); 25 | \end{tikzpicture} 26 | } 27 | 28 | % Default text color 29 | \AtBeginDocument{\colorlet{defaultcolor}{.}} 30 | \color{bodytext} 31 | 32 | % Layout for name, job title and sidebar 33 | \newcommand{\makeprofile}{% 34 | \vspace*{-1.5cm} 35 | {\setstretch{3} 36 | \begin{adjustbox}{minipage=[c][2cm]{\textwidth}} 37 | {\sname\name} 38 | \end{adjustbox}} 39 | 40 | {\setstretch{1.8} 41 | \begin{adjustbox}{minipage=[c][1cm]{\textwidth}} 42 | {\sjobtitle\jobtitle} 43 | \end{adjustbox}} 44 | \vspace{3\bigskipamount} 45 | } 46 | 47 | \newcommand{\makecontact}{% 48 | \begin{tikzpicture}[remember picture, overlay] 49 | \node [anchor=north, minimum width=4cm, inner xsep=0pt] at ($(current page.north east)-(3,2cm)$) {% 50 | \begin{tabularx}{4.5cm}{@{}Y{0.9cm} @{\hskip 0.05mm}X} 51 | \ifthenelse{\equal{\location}{}}{}{\locicon & \location \\ } 52 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon & \phone \\ } 53 | \ifthenelse{\equal{\mail}{}}{}{\mailicon & \href{mailto:\mail}{\mail} \\} 54 | \end{tabularx} 55 | }; 56 | \end{tikzpicture} 57 | } 58 | 59 | % Margins 60 | \RequirePackage[left=1cm, right=6.5cm, top=2cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 61 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Donate Paypal 2 | 3 | # tex-cvbuilder 4 | tex-cvbuilder is a collection of customizable Curriculum Vitae (CV) & cover letter LaTeX templates. The two main files to edit are `CV-Template.tex` and `Cover-Letter-Template.tex`. 5 | 6 | ## Building 7 | 8 | ### Using Tex Live on your system 9 | 10 | The documents are compiled using the XeLaTeX engine. To setup LaTeX on your machine, you will need to install a functional Tex Live distrubution (see [here](https://www.latex-project.org/get/#tex-distributions)). On Ubuntu, the required Tex Live packages are `texlive-fonts-extra` and `texlive-xetex`. To install Tex Live from tug.org, consult [this guide](https://tug.org/texlive/). 11 | 12 | Once LaTeX is installed, simply run 13 | 14 | ``` 15 | $ xelatex CV-Template.tex 16 | ``` 17 | 18 | This will generate `CV-Template.pdf`. To build the cover letter, replace `CV-Template.tex` with `Cover-Letter-Template.tex`. 19 | 20 | ### Using Docker 21 | 22 | This repository comes with a Dockerfile for creating a minimal Tex Live installation on top of a Ubuntu image. 23 | 24 | To build the image, locate to where you cloned this repository and run 25 | 26 | ``` 27 | $ docker build -t ubuntu:tex-cvbuilder . 28 | ``` 29 | 30 | Once the image is built, compile the document using 31 | 32 | ``` 33 | $ docker run --rm -v $PWD:/tex-cvbuilder ubuntu:tex-cvbuilder bash -c "xelatex CV-Template.tex && xelatex CV-Template.tex" 34 | ``` 35 | 36 | This will generate `CV-Template.pdf`. To build the cover letter, replace `CV-Template.tex` with `Cover-Letter-Template.tex`. 37 | 38 | ### Using online LaTeX editors 39 | 40 | You can also import these files into an online LaTeX editor such as [Overleaf](https://www.overleaf.com/). 41 | 42 | ## Themes 43 | 44 | Cycle through supported themes by changing the `\theme{}` variable at the beginning of the document. Currently available themes are: 45 | 46 | * `beige` 47 | * `blue` 48 | * `bw` 49 | * `coral` 50 | * `earth` 51 | * `framed` 52 | * `gray` 53 | * `minimal` 54 | * `onyx` 55 | * `plain` 56 | 57 | ![beige](previews/beige.png) 58 | ![blue](previews/blue.png) 59 | ![bw](previews/bw.png) 60 | ![coral](previews/coral.png) 61 | ![earth](previews/earth.png) 62 | ![framed](previews/framed.png) 63 | ![gray](previews/gray.png) 64 | ![minimal](previews/minimal.png) 65 | ![onyx](previews/onyx.png) 66 | ![plain](previews/plain.png) 67 | -------------------------------------------------------------------------------- /cover-letter-themes/beige.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{F1EDEA} 3 | \definecolor{bodytitle}{HTML}{484849} 4 | \definecolor{bodytext}{HTML}{484849} 5 | \definecolor{bulletcolor}{HTML}{484849} 6 | \definecolor{linkcolor}{HTML}{5F80A0} 7 | \definecolor{linecolor}{HTML}{C2C0BF} 8 | \definecolor{name}{HTML}{484849} 9 | \definecolor{jobtitle}{HTML}{484849} 10 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 11 | 12 | % Defining font styles 13 | \newcommand{\sname}{\color{name}\fontsize{46pt}{46pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 14 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{22pt}{22pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 15 | 16 | % Defining page styles 17 | \pagestyle{fancy} 18 | \fancyhf{} 19 | \renewcommand{\headrulewidth}{0pt} 20 | \renewcommand{\footrulewidth}{0pt} 21 | 22 | % Default text color 23 | \AtBeginDocument{\colorlet{defaultcolor}{.}} 24 | \color{bodytext} 25 | 26 | % Layout for name, job title and sidebar 27 | \newcommand{\makeprofile}{% 28 | \vspace*{-1.5cm} 29 | \begin{center} 30 | {\setstretch{3} 31 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 32 | \centering 33 | {\sname\name} 34 | \end{adjustbox}} 35 | 36 | {\setstretch{1.8} 37 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 38 | \centering 39 | {\sjobtitle\jobtitle} 40 | \end{adjustbox}} 41 | \end{center} 42 | \bigskip 43 | } 44 | 45 | \newcommand{\makecontact}{% 46 | \begin{tikzpicture}[ampersand replacement=\&] 47 | \node [rectangle, anchor=center, text width=\textwidth, minimum width=\textwidth, inner ysep=10pt, inner xsep=0pt, minimum height=1.5cm] (contact) at ($(current page.north)-(0cm,6cm)$) {% 48 | \begin{tabularx}{\textwidth}{CCC}% 49 | \ifthenelse{\equal{\location}{}}{}{\locicon\ \location } & 50 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\ \phone } & 51 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\ \href{mailto:\mail}{\mail} } \\ 52 | \end{tabularx} 53 | }; 54 | \draw[line width=1pt, draw=linecolor] ($(contact.north west)$) -- ($(contact.north east)$); 55 | \draw[line width=1pt, draw=linecolor] ($(contact.south west)$) -- ($(contact.south east)$); 56 | \end{tikzpicture} 57 | \vspace{2\bigskipamount} 58 | } 59 | 60 | % Margins 61 | \RequirePackage[left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 62 | -------------------------------------------------------------------------------- /cover-letter-themes/coral.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{F5F5F5} 3 | \definecolor{bodytitle}{HTML}{353535} 4 | \definecolor{bodytext}{HTML}{353535} 5 | \definecolor{bulletcolor}{HTML}{353535} 6 | \definecolor{linkcolor}{HTML}{EF6F6C} 7 | \definecolor{linecolor}{HTML}{EF6F6C} 8 | \definecolor{name}{HTML}{353535} 9 | \definecolor{jobtitle}{HTML}{353535} 10 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 11 | 12 | % Defining font styles 13 | \newcommand{\sname}{\color{name}\fontsize{46pt}{46pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 14 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{22pt}{22pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 15 | 16 | % Defining page styles 17 | \pagestyle{fancy} 18 | \fancyhf{} 19 | \renewcommand{\headrulewidth}{0pt} 20 | \renewcommand{\footrulewidth}{0pt} 21 | 22 | % Default text color 23 | \AtBeginDocument{\colorlet{defaultcolor}{.}} 24 | \color{bodytext} 25 | 26 | % Layout for name, job title and sidebar 27 | \newcommand{\makeprofile}{% 28 | \vspace*{-1.5cm} 29 | \begin{center} 30 | {\setstretch{3} 31 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 32 | \centering 33 | {\sname\name} 34 | \end{adjustbox}} 35 | 36 | {\setstretch{1.8} 37 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 38 | \centering 39 | {\sjobtitle\jobtitle} 40 | \end{adjustbox}} 41 | \end{center} 42 | \bigskip 43 | } 44 | 45 | \newcommand{\makecontact}{% 46 | \begin{tikzpicture}[ampersand replacement=\&] 47 | \node [rectangle, anchor=center, text width=\textwidth, minimum width=\textwidth, inner ysep=10pt, inner xsep=0pt, minimum height=1.5cm] (contact) at ($(current page.north)-(0cm,6cm)$) {% 48 | \begin{tabularx}{\textwidth}{CCC}% 49 | \ifthenelse{\equal{\location}{}}{}{\locicon\ \location } & 50 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\ \phone } & 51 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\ \href{mailto:\mail}{\mail} } \\ 52 | \end{tabularx} 53 | }; 54 | \draw[line width=1pt, draw=linecolor] ($(contact.north west)$) -- ($(contact.north east)$); 55 | \draw[line width=1pt, draw=linecolor] ($(contact.south west)$) -- ($(contact.south east)$); 56 | \end{tikzpicture} 57 | \vspace{2\bigskipamount} 58 | } 59 | 60 | % Margins 61 | \RequirePackage[left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 62 | -------------------------------------------------------------------------------- /cover-letter-themes/framed.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{sidebarbackground}{HTML}{ECEAEA} 4 | \definecolor{sidebartitle}{HTML}{564E4E} 5 | \definecolor{sidebartext}{HTML}{564E4E} 6 | \definecolor{bodytitle}{HTML}{564E4E} 7 | \definecolor{bodytext}{HTML}{564E4E} 8 | \definecolor{bulletcolor}{HTML}{564E4E} 9 | \definecolor{linkcolor}{HTML}{3E78B2} 10 | \definecolor{linecolor}{HTML}{564E4E} 11 | \definecolor{name}{HTML}{564E4E} 12 | \definecolor{jobtitle}{HTML}{564E4E} 13 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 14 | 15 | % Defining font styles 16 | \newcommand{\sname}{\color{name}\fontsize{40pt}{40pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 17 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{20pt}{20pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 18 | 19 | % Defining page styles 20 | \pagestyle{fancy} 21 | \fancyhf{} 22 | \renewcommand{\headrulewidth}{0pt} 23 | \renewcommand{\footrulewidth}{0pt} 24 | 25 | % Default text color 26 | \AtBeginDocument{\colorlet{defaultcolor}{.}} 27 | \color{bodytext} 28 | 29 | % Layout for name, job title and sidebar 30 | \newcommand{\makeprofile}{% 31 | \vspace*{-1.5cm} 32 | \begin{center} 33 | {\setstretch{3} 34 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 35 | \centering 36 | {\sname\name} 37 | \end{adjustbox}} 38 | 39 | {\setstretch{1.8} 40 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 41 | \centering 42 | {\sjobtitle\jobtitle} 43 | \end{adjustbox}} 44 | \end{center} 45 | } 46 | 47 | \newcommand{\makecontact}{% 48 | \begin{tikzpicture}[ampersand replacement=\&] 49 | \node [rectangle, anchor=north, fill=sidebarbackground, inner ysep=10pt, inner xsep=0pt, minimum height=1.5cm] (contact) at ($(current page.north)-(0cm,6cm)$) {% 50 | \begin{tabularx}{\textwidth}{CCC}% 51 | \ifthenelse{\equal{\location}{}}{}{\locicon\ \location } & 52 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\ \phone } & 53 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\ \href{mailto:\mail}{\mail} } \\ 54 | \end{tabularx} 55 | }; 56 | \draw[line width=1pt, draw=linecolor] ($(contact.north west)$) -- ($(contact.north east)$); 57 | \draw[line width=1pt, draw=linecolor] ($(contact.south west)$) -- ($(contact.south east)$); 58 | \end{tikzpicture} 59 | \vspace{2\bigskipamount} 60 | } 61 | 62 | % Margins 63 | \RequirePackage[left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 64 | -------------------------------------------------------------------------------- /cover-letter-themes/earth.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{headercolor}{HTML}{353839} 4 | \definecolor{sidebartitle}{HTML}{353839} 5 | \definecolor{bodytitle}{HTML}{353839} 6 | \definecolor{sidebartext}{HTML}{353839} 7 | \definecolor{altconttext}{HTML}{FFFFFF} 8 | \definecolor{bodytext}{HTML}{353839} 9 | \definecolor{bulletcolor}{HTML}{353839} 10 | \definecolor{linkcolor}{HTML}{FFFFFF} 11 | \definecolor{linecolor}{HTML}{E1A95F} 12 | \definecolor{name}{HTML}{FFFFFF} 13 | \definecolor{jobtitle}{HTML}{FFFFFF} 14 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 15 | 16 | % Defining font styles 17 | \newcommand{\sname}{\color{name}\fontsize{26pt}{26pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 18 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 19 | 20 | % Defining page style 21 | \pagestyle{fancy} 22 | \fancyhf{} 23 | \renewcommand{\headrulewidth}{0pt} 24 | \renewcommand{\footrulewidth}{0pt} 25 | \fancyhead[C]{% 26 | \begin{tikzpicture}[remember picture,overlay] 27 | \node [rectangle, fill=headercolor, anchor=north west, minimum width=\paperwidth+1cm, minimum height=6.5cm] at ($(current page.north west)+(-1cm,1cm)$) {}; 28 | \end{tikzpicture} 29 | } 30 | 31 | % Default text color 32 | \AtBeginDocument{\colorlet{defaultcolor}{.}} 33 | \color{bodytext} 34 | 35 | % Layout for name and job title 36 | \newcommand{\makeprofile}{% 37 | \vspace*{-1.5cm} 38 | \begin{center} 39 | {\setstretch{3} 40 | \begin{adjustbox}{minipage=[c][1.5cm]{.8\textwidth}, cfbox=linecolor 1.5pt} 41 | \centering 42 | {\sname\name} 43 | \end{adjustbox}} 44 | 45 | {\setstretch{1.8} 46 | \begin{adjustbox}{minipage=[c][0.5cm]{.9\textwidth}} 47 | \centering 48 | {\sjobtitle\jobtitle} 49 | \end{adjustbox}} 50 | 51 | \vspace{1\bigskipamount} 52 | \end{center} 53 | } 54 | 55 | \newcommand{\makecontact}{% 56 | \renewcommand{\arraystretch}{1.3} 57 | \begin{center} 58 | {\color{altconttext} 59 | \begin{tabularx}{\textwidth}{CCC} 60 | \ifthenelse{\equal{\location}{}}{}{\locicon\quad \location} & 61 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\quad \phone} & 62 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\quad \href{mailto:\mail}{\mail}} \\ 63 | \end{tabularx} 64 | } 65 | \end{center} 66 | \vspace{4\bigskipamount} 67 | } 68 | 69 | % Margins 70 | \RequirePackage[left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 71 | -------------------------------------------------------------------------------- /cover-letter-themes/minimal.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{bodytitle}{HTML}{484849} 4 | \definecolor{bodytext}{HTML}{484849} 5 | \definecolor{bulletcolor}{HTML}{484849} 6 | \definecolor{linkcolor}{HTML}{5F80A0} 7 | \definecolor{linecolor}{HTML}{484849} 8 | \definecolor{name}{HTML}{484849} 9 | \definecolor{jobtitle}{HTML}{484849} 10 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 11 | 12 | % Defining font styles 13 | \newcommand{\sname}{\color{name}\fontsize{46pt}{46pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 14 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{22pt}{22pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 15 | 16 | % Defining page styles 17 | \pagestyle{fancy} 18 | \fancyhf{} 19 | \renewcommand{\headrulewidth}{0pt} 20 | \renewcommand{\footrulewidth}{0pt} 21 | \fancyhead[C]{% 22 | \begin{tikzpicture}[remember picture,overlay] 23 | \draw [line width=3pt, color=linecolor] ($(current page.north west)-(0,5.5cm)$) -- ($(current page.north east)-(0,5.5cm)$); 24 | \end{tikzpicture} 25 | } 26 | 27 | % Default text color 28 | \AtBeginDocument{\colorlet{defaultcolor}{.}} 29 | \color{bodytext} 30 | 31 | % Layout for name, job title and sidebar 32 | \newcommand{\makeprofile}{% 33 | \vspace*{-1.5cm} 34 | \begin{center} 35 | {\setstretch{3} 36 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 37 | \centering 38 | {\sname\name} 39 | \end{adjustbox}} 40 | 41 | {\setstretch{1.8} 42 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 43 | \centering 44 | {\sjobtitle\jobtitle} 45 | \end{adjustbox}} 46 | \end{center} 47 | \bigskip 48 | } 49 | 50 | \newcommand{\makecontact}{% 51 | %\smallskip 52 | \begin{tikzpicture}[ampersand replacement=\&] 53 | \node [rectangle, anchor=center, minimum width=\textwidth, text width=\textwidth, inner ysep=10pt, inner xsep=0pt, minimum height=1.5cm] (contact) at ($(current page.north)-(0cm,5.5cm)$) {% 54 | \begin{tabularx}{\textwidth}{CCC}% 55 | \ifthenelse{\equal{\location}{}}{}{\locicon\ \location } & 56 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\ \phone } & 57 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\ \href{mailto:\mail}{\mail} } \\ 58 | \end{tabularx} 59 | }; 60 | \draw[line width=1pt, draw=linecolor] ($(contact.south west)$) -- ($(contact.south east)$); 61 | \end{tikzpicture} 62 | \vspace{2\bigskipamount} 63 | } 64 | 65 | % Margins 66 | \RequirePackage[left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 67 | -------------------------------------------------------------------------------- /cover-letter-themes/gray.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{sidebarbackground}{HTML}{f3f3f4} 4 | \definecolor{headercolor}{HTML}{6c6c6d} 5 | \definecolor{sidebartitle}{HTML}{24272B} 6 | \definecolor{sidebartext}{HTML}{6c6c6d} 7 | \definecolor{bodytitle}{HTML}{24272B} 8 | \definecolor{bodytext}{HTML}{6c6c6d} 9 | \definecolor{bulletcolor}{HTML}{6c6c6d} 10 | \definecolor{linkcolor}{HTML}{3E78B2} 11 | \definecolor{linecolor}{HTML}{24272B} 12 | \definecolor{name}{HTML}{FFFFFF} 13 | \definecolor{jobtitle}{HTML}{FFFFFF} 14 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 15 | 16 | % Defining font styles 17 | \newcommand{\sname}{\color{name}\fontsize{36pt}{36pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 18 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{20pt}{20pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 19 | 20 | % Defining page styles 21 | \pagestyle{fancy} 22 | \fancyhf{} 23 | \renewcommand{\headrulewidth}{0pt} 24 | \renewcommand{\footrulewidth}{0pt} 25 | \fancyhead[C]{% 26 | \begin{tikzpicture}[remember picture,overlay] 27 | \node [rectangle, fill=headercolor, anchor=north west, minimum width=\paperwidth+1cm, minimum height=7.5cm] at ($(current page.north west)+(-1cm,1cm)$) {}; 28 | \end{tikzpicture} 29 | } 30 | 31 | % Default text color 32 | \AtBeginDocument{\colorlet{defaultcolor}{.}} 33 | \color{bodytext} 34 | 35 | % Layout for name, job title and sidebar 36 | \newcommand{\makeprofile}{% 37 | \vspace*{-1cm} 38 | {\setstretch{3} 39 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 40 | {\sname\name} 41 | \end{adjustbox}} 42 | 43 | {\setstretch{1.8} 44 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 45 | {\sjobtitle\jobtitle} 46 | \end{adjustbox}} 47 | \medskip 48 | } 49 | 50 | \newcommand{\makecontact}{% 51 | \begin{tikzpicture}[ampersand replacement=\&] 52 | \node [rectangle, fill=sidebarbackground, anchor=north, inner ysep=10pt, inner xsep=0pt, minimum width=\textwidth, minimum height=1.5cm] (contact) at ($(current page.north)-(0cm,6.5cm)$) {% 53 | \begin{tabularx}{\textwidth}{CCC}% 54 | \ifthenelse{\equal{\location}{}}{}{\locicon\ \location } & 55 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\ \phone } & 56 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\ \href{mailto:\mail}{\mail} } \\ 57 | \end{tabularx} 58 | }; 59 | \draw[line width=1pt, draw=headercolor] ($(contact.south west)$) -- ($(contact.south east)$); 60 | \end{tikzpicture} 61 | \vspace{2\bigskipamount} 62 | } 63 | 64 | % Margins 65 | \RequirePackage[left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 66 | -------------------------------------------------------------------------------- /cover-letter-themes/bw.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{sidebarbackground}{HTML}{24272B} 4 | \definecolor{sidebartitle}{HTML}{FFFFFF} 5 | \definecolor{sidebartext}{HTML}{FFFFFF} 6 | \definecolor{bodytitle}{HTML}{24272B} 7 | \definecolor{bodytext}{HTML}{6c6c6d} 8 | \definecolor{bulletcolor}{HTML}{24272B} 9 | \definecolor{linecolor}{HTML}{24272B} 10 | \definecolor{linkcolor}{HTML}{3E78B2} 11 | \definecolor{name}{HTML}{24272B} 12 | \definecolor{jobtitle}{HTML}{6c6c6d} 13 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 14 | 15 | % Defining font styles 16 | \newcommand{\sname}{\color{name}\fontsize{40pt}{40pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 17 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{20pt}{20pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 18 | 19 | % Defining page styles 20 | \pagestyle{fancy} 21 | \fancyhf{} 22 | \renewcommand{\headrulewidth}{0pt} 23 | \renewcommand{\footrulewidth}{0pt} 24 | \fancyhead[C]{% 25 | \begin{tikzpicture}[remember picture,overlay] 26 | \node [rectangle, fill=sidebarbackground, anchor=north west, minimum width=4cm, minimum height=\paperheight+2cm] at ($(current page.north west)-(1cm,-1cm)$) {}; 27 | \end{tikzpicture} 28 | } 29 | 30 | % Default text color 31 | \AtBeginDocument{\colorlet{defaultcolor}{.}} 32 | \color{bodytext} 33 | 34 | % Layout for name, job title and sidebar 35 | \newcommand{\makeprofile}{% 36 | \vspace*{-1.5cm} 37 | {\setstretch{3} 38 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 39 | {\sname\name} 40 | \end{adjustbox}} 41 | 42 | {\setstretch{1.8} 43 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 44 | {\sjobtitle\jobtitle} 45 | \end{adjustbox}} 46 | } 47 | 48 | \newcommand{\makecontact}{% 49 | \begin{tikzpicture}[ampersand replacement=\&] 50 | \node [rectangle, anchor=north, text width=\textwidth, minimum width=\textwidth, inner ysep=10pt, inner xsep=0pt, minimum height=1.5cm] (contact) at ($(current page.north)-(6.5cm,6cm)$) {% 51 | \begin{tabularx}{\textwidth}{CCC}% 52 | \ifthenelse{\equal{\location}{}}{}{\locicon\ \location } & 53 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\ \phone } & 54 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\ \href{mailto:\mail}{\mail} } \\ 55 | \end{tabularx} 56 | }; 57 | \draw[line width=1pt, draw=linecolor] ($(contact.north west)$) -- ($(contact.north east)$); 58 | \draw[line width=1pt, draw=linecolor] ($(contact.south west)$) -- ($(contact.south east)$); 59 | \end{tikzpicture} 60 | \vspace{2\bigskipamount} 61 | } 62 | 63 | % Margins 64 | \RequirePackage[left=4cm, right=1.5cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 65 | -------------------------------------------------------------------------------- /cover-letter-themes/onyx.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{sidebarbackground}{HTML}{353839} 4 | \definecolor{sidebartitle}{HTML}{FFFFFF} 5 | \definecolor{sidebartext}{HTML}{FFFFFF} 6 | \definecolor{contbackground}{HTML}{DCAE71} 7 | \definecolor{altconttext}{HTML}{353839} 8 | \definecolor{bodytitle}{HTML}{353839} 9 | \definecolor{bodytext}{HTML}{353839} 10 | \definecolor{bulletcolor}{HTML}{353839} 11 | \definecolor{linkcolor}{HTML}{353839} 12 | \definecolor{linecolor}{HTML}{353839} 13 | \definecolor{name}{HTML}{353839} 14 | \definecolor{jobtitle}{HTML}{353839} 15 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 16 | 17 | % Defining font styles 18 | \newcommand{\sname}{\color{name}\fontsize{36pt}{36pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 19 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{18pt}{18pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 20 | 21 | % Defining page styles 22 | \pagestyle{fancy} 23 | \fancyhf{} 24 | \renewcommand{\headrulewidth}{0pt} 25 | \renewcommand{\footrulewidth}{0pt} 26 | \fancyhead[C]{% 27 | \begin{tikzpicture}[remember picture,overlay] 28 | \node [rectangle, fill=sidebarbackground, anchor=north west, minimum width=2cm, minimum height=\paperheight+2cm] at ($(current page.north west)-(1cm,-1cm)$) {}; 29 | \end{tikzpicture} 30 | } 31 | 32 | % Default text color 33 | \AtBeginDocument{\colorlet{defaultcolor}{.}} 34 | \color{bodytext} 35 | 36 | % Layout for name, job title and sidebar 37 | \newcommand{\makeprofile}{% 38 | \vspace*{-1cm} 39 | {\setstretch{3} 40 | \begin{adjustbox}{minipage=[c][2cm]{.9\textwidth}} 41 | {\sname\name} 42 | \end{adjustbox}} 43 | 44 | {\setstretch{1.8} 45 | \begin{adjustbox}{minipage=[c][1cm]{.9\textwidth}} 46 | {\sjobtitle\jobtitle} 47 | \end{adjustbox}} 48 | 49 | \vspace{3.5cm} 50 | } 51 | 52 | \newcommand{\makecontact}{% 53 | \begin{tikzpicture}[remember picture, overlay] 54 | \node[rectangle, fill=contbackground, anchor=north, minimum height=1.8cm, minimum width=\paperwidth+3cm] at ($(current page.north)-(0cm,4.75cm)$) {% 55 | \renewcommand{\arraystretch}{1.3} 56 | \centering 57 | {\color{altconttext} 58 | \begin{tabularx}{\textwidth}{CCC} 59 | \ifthenelse{\equal{\location}{}}{}{\locicon\quad \location} & 60 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\quad \phone} & 61 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\quad \href{mailto:\mail}{\mail}} \\ 62 | \end{tabularx} 63 | } 64 | }; 65 | \end{tikzpicture} 66 | } 67 | 68 | % Margins 69 | \RequirePackage[left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 70 | -------------------------------------------------------------------------------- /cover-letter-themes/blue.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{headercolor}{HTML}{2F374B} 4 | \definecolor{sidebartitle}{HTML}{6c6c6d} 5 | \definecolor{sidebartext}{HTML}{6c6c6d} 6 | \definecolor{bodytitle}{HTML}{6c6c6d} 7 | \definecolor{bodytext}{HTML}{6c6c6d} 8 | \definecolor{bulletcolor}{HTML}{6c6c6d} 9 | \definecolor{linkcolor}{HTML}{2F374B} 10 | \definecolor{linecolor}{HTML}{ADA080} 11 | \definecolor{name}{HTML}{ADA080} 12 | \definecolor{jobtitle}{HTML}{ADA080} 13 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 14 | 15 | % Defining font styles 16 | \newcommand{\sname}{\color{name}\fontsize{46pt}{46pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 17 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{22pt}{22pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 18 | 19 | % Defining page styles 20 | \pagestyle{fancy} 21 | \fancyhf{} 22 | \renewcommand{\headrulewidth}{0pt} 23 | \renewcommand{\footrulewidth}{0pt} 24 | \fancyhead[C]{% 25 | \begin{tikzpicture}[remember picture,overlay] 26 | \node [rectangle, fill=headercolor, anchor=north west, minimum width=\paperwidth+1cm, minimum height=6.5cm] at ($(current page.north west)+(-1cm,1cm)$) {}; 27 | \end{tikzpicture} 28 | } 29 | 30 | % Default text color 31 | \AtBeginDocument{\colorlet{defaultcolor}{.}} 32 | \color{bodytext} 33 | 34 | % Layout for name, job title and sidebar 35 | \newcommand{\makeprofile}{% 36 | \vspace*{-1.5cm} 37 | \begin{center} 38 | {\setstretch{3} 39 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 40 | \centering 41 | {\sname\name} 42 | \end{adjustbox}} 43 | 44 | {\setstretch{1.8} 45 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 46 | \centering 47 | {\sjobtitle\jobtitle} 48 | \end{adjustbox}} 49 | \end{center} 50 | \bigskip 51 | } 52 | 53 | \newcommand{\makecontact}{% 54 | \begin{tikzpicture}[ampersand replacement=\&] 55 | \node [rectangle, anchor=north, text width=\textwidth, minimum width=\textwidth, inner ysep=10pt, inner xsep=0pt, minimum height=1.5cm] (contact) at ($(current page.north)-(0cm,5.5cm)$) {% 56 | \begin{tabularx}{\textwidth}{CCC}% 57 | \ifthenelse{\equal{\location}{}}{}{\locicon\ \location } & 58 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\ \phone } & 59 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\ \href{mailto:\mail}{\mail} } \\ 60 | \end{tabularx} 61 | }; 62 | \draw[line width=1pt, draw=linecolor] ($(contact.south west)$) -- ($(contact.south east)$); 63 | \end{tikzpicture} 64 | \vspace{2\bigskipamount} 65 | } 66 | 67 | % Margins 68 | \RequirePackage[left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 69 | -------------------------------------------------------------------------------- /cv-themes/beige.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{F1EDEA} 3 | \definecolor{sidebartitle}{HTML}{484849} 4 | \definecolor{sidebartext}{HTML}{484849} 5 | \definecolor{bodytitle}{HTML}{484849} 6 | \definecolor{bodytext}{HTML}{484849} 7 | \definecolor{bulletcolor}{HTML}{484849} 8 | \definecolor{linkcolor}{HTML}{5F80A0} 9 | \definecolor{linecolor}{HTML}{C2C0BF} 10 | \definecolor{name}{HTML}{484849} 11 | \definecolor{jobtitle}{HTML}{484849} 12 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 13 | 14 | % Heading styles 15 | \titleformat{\section} 16 | {\color{bodytitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 17 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 18 | 19 | \titleformat{\subsection} 20 | {\color{sidebartitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 21 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 22 | 23 | \titleformat{\subsubsection} 24 | {\color{bodytitle}\fontsize{12pt}{12pt}\sffamily\addfontfeature{LetterSpace=2}} 25 | {}{0pt}{} 26 | 27 | \titlespacing*{\section}{0pt}{0.5cm}{0.4cm} 28 | \titlespacing*{\subsection}{0pt}{0.5cm}{0.4cm} 29 | \titlespacing*{\subsubsection}{0pt}{0.5cm}{0.1cm} 30 | 31 | % Defining font styles 32 | \newcommand{\sname}{\color{name}\fontsize{46pt}{46pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 33 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{22pt}{22pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 34 | 35 | % Defining page styles 36 | \pagestyle{fancy} 37 | \fancypagestyle{firstpagestyle}{ 38 | \fancyhf{} 39 | \renewcommand{\headrulewidth}{0pt} 40 | \renewcommand{\footrulewidth}{0pt} 41 | \fancyhead[C]{% 42 | \begin{tikzpicture}[remember picture,overlay] 43 | \draw [line width=1pt, color=linecolor] ($(current page.north west)+(7cm,-5.5cm)$) -- ($(current page.south west)+(7cm,1cm)$); 44 | \end{tikzpicture} 45 | } 46 | } 47 | 48 | \fancyhf{} 49 | \renewcommand{\headrulewidth}{0pt} 50 | \renewcommand{\footrulewidth}{0pt} 51 | \fancyhead[C]{% 52 | \begin{tikzpicture}[remember picture,overlay] 53 | \draw [line width=1pt, color=linecolor] ($(current page.north west)+(7cm,-1cm)$) -- ($(current page.south west)+(7cm,1cm)$); 54 | \end{tikzpicture} 55 | } 56 | 57 | % Layout for name, job title and sidebar 58 | \setcolumnwidth{5cm,12cm} 59 | \setlength{\columnsep}{1.5cm} 60 | \columncolor{sidebartext}[0] 61 | \columncolor{bodytext}[1] 62 | 63 | \newcommand{\makeprofile}{% 64 | \vspace*{-1.5cm} 65 | \begin{center} 66 | \thispagestyle{firstpagestyle} 67 | {\setstretch{3} 68 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 69 | \centering 70 | {\sname\name} 71 | \end{adjustbox}} 72 | 73 | {\setstretch{1.8} 74 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 75 | \centering 76 | {\sjobtitle\jobtitle} 77 | \end{adjustbox}} 78 | \end{center} 79 | \bigskip 80 | } 81 | 82 | % Margins 83 | \RequirePackage[left=1cm, right=1cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 84 | 85 | % Personal skills bar 86 | \newcommand\perskills[1]{% 87 | \ifthenelse{\equal{#1}{}}{\booltrue{perempty}}{\renewcommand{\perskills}{% 88 | \foreach [count=\i] \x/\y in {#1}{% 89 | {\x}\\ 90 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 91 | } 92 | }} 93 | } 94 | 95 | % Professional skills bar 96 | \newcommand\proskills[1]{% 97 | \ifthenelse{\equal{#1}{}}{\booltrue{proempty}}{\renewcommand{\proskills}{% 98 | \foreach [count=\i] \x/\y in {#1}{% 99 | {\x}\\ 100 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 101 | } 102 | }} 103 | } 104 | 105 | % Command for drawing language skill circles 106 | % Adapted from AltaCV Template: https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv 107 | \newcommand\langskills[1]{% 108 | \ifthenelse{\equal{#1}{}}{\booltrue{langempty}}{\renewcommand{\langskills}{% 109 | \renewcommand{\arraystretch}{1.4} 110 | \foreach [count=\i] \x/\y in {#1}{% 111 | \begin{tabular*}{\columnwidth}{@{}L{.4\columnwidth}L{.6\columnwidth}} 112 | {\x} & 113 | \foreach \z in {1,...,5}{% 114 | {\ifnumgreater{\z}{\y}{\color{bodytext!30}}{\color{bodytext}}\small{\faCircle}}}\\ 115 | \end{tabular*} 116 | } 117 | }} 118 | } 119 | -------------------------------------------------------------------------------- /cv-themes/minimal.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{sidebartitle}{HTML}{484849} 4 | \definecolor{sidebartext}{HTML}{6c6c6d} 5 | \definecolor{bodytitle}{HTML}{484849} 6 | \definecolor{bodytext}{HTML}{6c6c6d} 7 | \definecolor{bulletcolor}{HTML}{484849} 8 | \definecolor{linkcolor}{HTML}{3E78B2} 9 | \definecolor{linecolor}{HTML}{484849} 10 | \definecolor{name}{HTML}{484849} 11 | \definecolor{jobtitle}{HTML}{484849} 12 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 13 | 14 | % Heading styles 15 | \titleformat{\section} 16 | {\color{bodytitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 17 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 18 | 19 | \titleformat{\subsection} 20 | {\color{sidebartitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 21 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 22 | 23 | \titleformat{\subsubsection} 24 | {\color{bodytitle}\fontsize{12pt}{12pt}\sffamily\addfontfeature{LetterSpace=2}} 25 | {}{0pt}{} 26 | 27 | \titlespacing*{\section}{0pt}{0.5cm}{0.4cm} 28 | \titlespacing*{\subsection}{0pt}{0.5cm}{0.4cm} 29 | \titlespacing*{\subsubsection}{0pt}{0.5cm}{0.1cm} 30 | 31 | % Defining font styles 32 | \newcommand{\sname}{\color{name}\fontsize{46pt}{46pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 33 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{22pt}{22pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 34 | 35 | % Defining page styles 36 | \pagestyle{fancy} 37 | \fancypagestyle{firstpagestyle}{ 38 | \fancyhf{} 39 | \renewcommand{\headrulewidth}{0pt} 40 | \renewcommand{\footrulewidth}{0pt} 41 | \fancyhead[C]{% 42 | \begin{tikzpicture}[remember picture,overlay] 43 | \draw [line width=3pt, color=linecolor] ($(current page.north west)-(0,5.5cm)$) -- ($(current page.north east)-(0,5.5cm)$); 44 | \draw [line width=1pt, color=linecolor] ($(current page.north west)+(7cm,-6.25cm)$) -- ($(current page.south west)+(7cm,1cm)$); 45 | \end{tikzpicture} 46 | } 47 | } 48 | 49 | \fancyhf{} 50 | \renewcommand{\headrulewidth}{0pt} 51 | \renewcommand{\footrulewidth}{0pt} 52 | \fancyhead[C]{% 53 | \begin{tikzpicture}[remember picture,overlay] 54 | \draw [line width=1pt, color=linecolor] ($(current page.north west)+(7cm,-1cm)$) -- ($(current page.south west)+(7cm,1cm)$); 55 | \end{tikzpicture} 56 | } 57 | 58 | % Layout for name, job title and sidebar 59 | \setcolumnwidth{5cm,12cm} 60 | \setlength{\columnsep}{1.5cm} 61 | \columncolor{sidebartext}[0] 62 | \columncolor{bodytext}[1] 63 | 64 | \newcommand{\makeprofile}{% 65 | \vspace*{-1.5cm} 66 | \begin{center} 67 | \thispagestyle{firstpagestyle} 68 | {\setstretch{3} 69 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 70 | \centering 71 | {\sname\name} 72 | \end{adjustbox}} 73 | 74 | {\setstretch{1.8} 75 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 76 | \centering 77 | {\sjobtitle\jobtitle} 78 | \end{adjustbox}} 79 | \end{center} 80 | \vspace{2\bigskipamount} 81 | } 82 | 83 | % Margins 84 | \RequirePackage[left=1cm, right=1cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 85 | 86 | % Personal skills bar 87 | \newcommand\perskills[1]{% 88 | \ifthenelse{\equal{#1}{}}{\booltrue{perempty}}{\renewcommand{\perskills}{% 89 | \foreach [count=\i] \x/\y in {#1}{% 90 | {\x}\\ 91 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 92 | } 93 | }} 94 | } 95 | 96 | % Professional skills bar 97 | \newcommand\proskills[1]{% 98 | \ifthenelse{\equal{#1}{}}{\booltrue{proempty}}{\renewcommand{\proskills}{% 99 | \foreach [count=\i] \x/\y in {#1}{% 100 | {\x}\\ 101 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 102 | } 103 | }} 104 | } 105 | 106 | % Command for drawing language skill circles 107 | % Adapted from AltaCV Template: https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv 108 | \newcommand\langskills[1]{% 109 | \ifthenelse{\equal{#1}{}}{\booltrue{langempty}}{\renewcommand{\langskills}{% 110 | \renewcommand{\arraystretch}{1.4} 111 | \foreach [count=\i] \x/\y in {#1}{% 112 | \begin{tabular*}{\columnwidth}{@{}L{.4\columnwidth}L{.6\columnwidth}} 113 | {\x} & 114 | \foreach \z in {1,...,5}{% 115 | {\ifnumgreater{\z}{\y}{\color{bodytext!30}}{\color{bodytext}}\small{\faCircle}}}\\ 116 | \end{tabular*} 117 | } 118 | }} 119 | } 120 | -------------------------------------------------------------------------------- /cv-themes/blue.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{headercolor}{HTML}{2F374B} 4 | \definecolor{sidebartitle}{HTML}{6c6c6d} 5 | \definecolor{sidebartext}{HTML}{6c6c6d} 6 | \definecolor{bodytitle}{HTML}{6c6c6d} 7 | \definecolor{bodytext}{HTML}{6c6c6d} 8 | \definecolor{bulletcolor}{HTML}{6c6c6d} 9 | \definecolor{linkcolor}{HTML}{2F374B} 10 | \definecolor{linecolor}{HTML}{ADA080} 11 | \definecolor{name}{HTML}{ADA080} 12 | \definecolor{jobtitle}{HTML}{ADA080} 13 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 14 | 15 | % Heading styles 16 | \titleformat{\section} 17 | {\color{bodytitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 18 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 19 | 20 | \titleformat{\subsection} 21 | {\color{sidebartitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 22 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 23 | 24 | \titleformat{\subsubsection} 25 | {\color{bodytitle}\fontsize{12pt}{12pt}\sffamily\addfontfeature{LetterSpace=2}} 26 | {}{0pt}{} 27 | 28 | \titlespacing*{\section}{0pt}{0.5cm}{0.4cm} 29 | \titlespacing*{\subsection}{0pt}{0.5cm}{0.4cm} 30 | \titlespacing*{\subsubsection}{0pt}{0.5cm}{0.1cm} 31 | 32 | % Defining font styles 33 | \newcommand{\sname}{\color{name}\fontsize{46pt}{46pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 34 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{22pt}{22pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 35 | 36 | % Defining page styles 37 | \pagestyle{fancy} 38 | \fancypagestyle{firstpagestyle}{ 39 | \fancyhf{} 40 | \renewcommand{\headrulewidth}{0pt} 41 | \renewcommand{\footrulewidth}{0pt} 42 | \fancyhead[C]{% 43 | \begin{tikzpicture}[remember picture,overlay] 44 | \node [rectangle, fill=headercolor, anchor=north west, minimum width=\paperwidth+1cm, minimum height=6.5cm] (box) at ($(current page.north west)+(-1cm,1cm)$) {}; 45 | \draw [line width=1pt, color=linecolor] ($(current page.north west)+(7cm,-6.25cm)$) -- ($(current page.south west)+(7cm,1cm)$); 46 | \end{tikzpicture} 47 | } 48 | } 49 | 50 | \fancyhf{} 51 | \renewcommand{\headrulewidth}{0pt} 52 | \renewcommand{\footrulewidth}{0pt} 53 | \fancyhead[C]{% 54 | \begin{tikzpicture}[remember picture,overlay] 55 | \draw [line width=1pt, color=linecolor] ($(current page.north west)+(7cm,-1cm)$) -- ($(current page.south west)+(7cm,1cm)$); 56 | \end{tikzpicture} 57 | } 58 | 59 | % Layout for name, job title and sidebar 60 | \setcolumnwidth{5cm,12cm} 61 | \setlength{\columnsep}{1.5cm} 62 | \columncolor{sidebartext}[0] 63 | \columncolor{bodytext}[1] 64 | 65 | \newcommand{\makeprofile}{ 66 | \vspace*{-1.5cm} 67 | \begin{center} 68 | \thispagestyle{firstpagestyle} 69 | {\setstretch{3} 70 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 71 | \centering 72 | {\sname\name} 73 | \end{adjustbox}} 74 | 75 | {\setstretch{1.8} 76 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 77 | \centering 78 | {\sjobtitle\jobtitle} 79 | \end{adjustbox}} 80 | \end{center} 81 | \vspace{2\bigskipamount} 82 | } 83 | 84 | % Margins 85 | \RequirePackage[left=1cm, right=1cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 86 | 87 | % Personal skills bar 88 | \newcommand\perskills[1]{ 89 | \ifthenelse{\equal{#1}{}}{\booltrue{perempty}}{\renewcommand{\perskills}{% 90 | \foreach [count=\i] \x/\y in {#1}{ 91 | {\x}\\ 92 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 93 | } 94 | }} 95 | } 96 | 97 | % Professional skills bar 98 | \newcommand\proskills[1]{ 99 | \ifthenelse{\equal{#1}{}}{\booltrue{proempty}}{\renewcommand{\proskills}{% 100 | \foreach [count=\i] \x/\y in {#1}{ 101 | {\x}\\ 102 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 103 | } 104 | }} 105 | } 106 | 107 | % Command for drawing language skill circles 108 | % Adapted from AltaCV Template: https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv 109 | \newcommand\langskills[1]{% 110 | \ifthenelse{\equal{#1}{}}{\booltrue{langempty}}{\renewcommand{\langskills}{% 111 | \renewcommand{\arraystretch}{1.4} 112 | \foreach [count=\i] \x/\y in {#1}{% 113 | \begin{tabular*}{\columnwidth}{@{}L{.4\columnwidth}L{.6\columnwidth}} 114 | {\x} & 115 | \foreach \z in {1,...,5}{% 116 | {\ifnumgreater{\z}{\y}{\color{bodytext!30}}{\color{bodytext}}\small{\faCircle}}}\\ 117 | \end{tabular*} 118 | } 119 | }} 120 | } 121 | -------------------------------------------------------------------------------- /cv-themes/plain.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{sidebartitle}{HTML}{191717} 4 | \definecolor{sidebartext}{HTML}{191717} 5 | \definecolor{bodytitle}{HTML}{191717} 6 | \definecolor{bodytext}{HTML}{191717} 7 | \definecolor{bulletcolor}{HTML}{191717} 8 | \definecolor{linkcolor}{HTML}{086375} 9 | \definecolor{linecolor}{HTML}{191717} 10 | \definecolor{name}{HTML}{191717} 11 | \definecolor{jobtitle}{HTML}{191717} 12 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 13 | 14 | % Heading styles 15 | \titleformat{\section} 16 | {\color{bodytitle}\fontsize{16pt}{16pt}\sffamily\bfseries} 17 | {}{0pt}{} 18 | 19 | \titleformat{\subsection} 20 | {\color{sidebartitle}\fontsize{16pt}{16pt}\sffamily\bfseries} 21 | {}{0pt}{} 22 | 23 | \titleformat{\subsubsection} 24 | {\color{bodytitle}\fontsize{12pt}{12pt}\sffamily\addfontfeature{LetterSpace=2}} 25 | {}{0pt}{} 26 | 27 | \titlespacing*{\section}{0pt}{0.5cm}{0.4cm} 28 | \titlespacing*{\subsection}{0pt}{0.5cm}{0.4cm} 29 | \titlespacing*{\subsubsection}{0pt}{0.5cm}{0.1cm} 30 | 31 | % Defining font styles 32 | \newcommand{\sname}{\color{name}\fontsize{36pt}{36pt}\sffamily} 33 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{18pt}{18pt}\sffamily\addfontfeature{LetterSpace=2}} 34 | 35 | % Defining page styles 36 | \pagestyle{fancy} 37 | \fancypagestyle{firstpagestyle}{ 38 | \fancyhf{} 39 | \renewcommand{\headrulewidth}{0pt} 40 | \renewcommand{\footrulewidth}{0pt} 41 | \fancyhead[C]{% 42 | \begin{tikzpicture}[remember picture,overlay] 43 | \draw [line width=2pt, color=linecolor] ($(current page.north west)+(1,-5cm)$) -- ($(current page.north east)-(6.9,5cm)$); 44 | \draw [line width=2pt, color=linecolor] ($(current page.north west)+(14.1cm,-1cm)$) -- ($(current page.south west)+(14.1cm,1cm)$); 45 | \end{tikzpicture} 46 | } 47 | } 48 | 49 | \fancyhf{} 50 | \renewcommand{\headrulewidth}{0pt} 51 | \renewcommand{\footrulewidth}{0pt} 52 | \fancyhead[C]{% 53 | \begin{tikzpicture}[remember picture,overlay] 54 | \draw [line width=2pt, color=linecolor] ($(current page.north west)+(14.1cm,-1cm)$) -- ($(current page.south west)+(14.1cm,1cm)$); 55 | \end{tikzpicture} 56 | } 57 | 58 | % Layout for name, job title and sidebar 59 | \setcolumnwidth{12cm,5cm} 60 | \setlength{\columnsep}{1.5cm} 61 | \columncolor{sidebartext}[1] 62 | \columncolor{bodytext}[0] 63 | 64 | \newcommand{\makeprofile}{% 65 | \vspace*{-1.5cm} 66 | \thispagestyle{firstpagestyle} 67 | {\setstretch{3} 68 | \begin{adjustbox}{minipage=[c][2cm]{.65\textwidth}} 69 | {\sname\name} 70 | \end{adjustbox}} 71 | 72 | {\setstretch{1.8} 73 | \begin{adjustbox}{minipage=[c][1cm]{.65\textwidth}} 74 | {\sjobtitle\jobtitle} 75 | \end{adjustbox}} 76 | \vspace{3\bigskipamount} 77 | \ifthenelse{\equal{\profilepic}{}}{}{% 78 | \begin{tikzpicture}[remember picture,overlay] 79 | \node[rectangle, minimum height=4cm, minimum width=4cm, path picture={ 80 | \node at (path picture bounding box.center){\includegraphics[width=4cm]{\profilepic}};}] at ($(current page.north east)-(3.5cm,3cm)$) {}; 81 | \end{tikzpicture} 82 | } 83 | } 84 | 85 | % Margins 86 | \RequirePackage[left=1cm, right=1cm, top=2cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 87 | 88 | % Personal skills bar 89 | \newcommand\perskills[1]{% 90 | \ifthenelse{\equal{#1}{}}{\booltrue{perempty}}{\renewcommand{\perskills}{% 91 | \foreach [count=\i] \x/\y in {#1}{% 92 | {\x}\\ 93 | \progressbar[width=.9\columnwidth, roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 94 | } 95 | }} 96 | } 97 | 98 | % Professional skills bar 99 | \newcommand\proskills[1]{% 100 | \ifthenelse{\equal{#1}{}}{\booltrue{proempty}}{\renewcommand{\proskills}{% 101 | \foreach [count=\i] \x/\y in {#1}{% 102 | {\x}\\ 103 | \progressbar[width=.9\columnwidth, roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 104 | } 105 | }} 106 | } 107 | 108 | % Command for drawing language skill circles 109 | % Adapted from AltaCV Template: https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv 110 | \newcommand\langskills[1]{% 111 | \ifthenelse{\equal{#1}{}}{\booltrue{langempty}}{\renewcommand{\langskills}{% 112 | \renewcommand{\arraystretch}{1.4} 113 | \foreach [count=\i] \x/\y in {#1}{% 114 | \begin{tabular*}{\columnwidth}{@{}L{.4\columnwidth}L{.6\columnwidth}} 115 | {\x} & 116 | \foreach \z in {1,...,5}{% 117 | {\ifnumgreater{\z}{\y}{\color{bodytext!30}}{\color{bodytext}}\small{\faCircle}}}\\ 118 | \end{tabular*} 119 | } 120 | }} 121 | } 122 | -------------------------------------------------------------------------------- /cv-themes/bw.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{sidebarbackground}{HTML}{24272B} 4 | \definecolor{sidebartitle}{HTML}{FFFFFF} 5 | \definecolor{sidebartext}{HTML}{FFFFFF} 6 | \definecolor{bodytitle}{HTML}{24272B} 7 | \definecolor{bodytext}{HTML}{6c6c6d} 8 | \definecolor{bulletcolor}{HTML}{24272B} 9 | \definecolor{linkcolor}{HTML}{3E78B2} 10 | \definecolor{linecolor}{HTML}{24272B} 11 | \definecolor{name}{HTML}{24272B} 12 | \definecolor{jobtitle}{HTML}{6c6c6d} 13 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 14 | 15 | % Heading styles 16 | \titleformat{\section} 17 | {\color{bodytitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 18 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 19 | 20 | \titleformat{\subsection} 21 | {\color{sidebartitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 22 | {}{0pt}{}[{\color{sidebartitle}\titlerule[1pt]}] 23 | 24 | \titleformat{\subsubsection} 25 | {\color{bodytitle}\fontsize{12pt}{12pt}\sffamily\addfontfeature{LetterSpace=2}} 26 | {}{0pt}{} 27 | 28 | \titlespacing*{\section}{0pt}{0.5cm}{0.4cm} 29 | \titlespacing*{\subsection}{0pt}{0.5cm}{0.4cm} 30 | \titlespacing*{\subsubsection}{0pt}{0.5cm}{0.1cm} 31 | 32 | % Defining font styles 33 | \newcommand{\sname}{\color{name}\fontsize{40pt}{40pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 34 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{20pt}{20pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 35 | 36 | % Defining page styles 37 | \pagestyle{fancy} 38 | 39 | \fancyhf{} 40 | \renewcommand{\headrulewidth}{0pt} 41 | \renewcommand{\footrulewidth}{0pt} 42 | \fancyhead[C]{% 43 | \begin{tikzpicture}[remember picture,overlay] 44 | \node [rectangle, fill=sidebarbackground, anchor=north west, minimum width=8cm, minimum height=\paperheight+2cm] at ($(current page.north west)-(1cm,-1cm)$) {}; 45 | \end{tikzpicture} 46 | } 47 | 48 | % Layout for name, job title and sidebar 49 | \setcolumnwidth{5cm,12cm} 50 | \setlength{\columnsep}{1.5cm} 51 | \columncolor{sidebartext}[0] 52 | \columncolor{bodytext}[1] 53 | 54 | \newcommand{\makeprofile}{ 55 | \vspace*{-1.5cm} 56 | {\setstretch{3} 57 | \begin{adjustbox}{padding=6.55cm 0pt 0pt 0pt,minipage=[c][2.5cm]{12cm}} 58 | {\sname\name} 59 | \end{adjustbox}} 60 | 61 | {\setstretch{1.8} 62 | \begin{adjustbox}{padding=6.55cm 0pt 0pt 0pt,minipage=[c][1.5cm]{12cm}} 63 | {\sjobtitle\jobtitle} 64 | \end{adjustbox}} 65 | \bigskip 66 | \ifthenelse{\equal{\profilepic}{}}{}{ 67 | \begin{tikzpicture}[remember picture,overlay] 68 | \node[circle,minimum width=4cm, path picture={ 69 | \node at (path picture bounding box.center){\includegraphics[width=4cm]{\profilepic}};}] at ($(current page.north west)+(3.5cm,-3cm)$) {}; 70 | \end{tikzpicture} 71 | } 72 | } 73 | 74 | % Margins 75 | \RequirePackage[left=1cm, right=1cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 76 | 77 | % Personal skills bar 78 | \newcommand\perskills[1]{ 79 | \ifthenelse{\equal{#1}{}}{\booltrue{perempty}}{\renewcommand{\perskills}{% 80 | \foreach [count=\i] \x/\y in {#1}{ 81 | {\x}\\ 82 | \ifthenelse{\equal{\thecolumn}{0}}{ 83 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=sidebartext, filledcolor=sidebarbackground, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 84 | }{ 85 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 86 | } 87 | } 88 | }} 89 | } 90 | 91 | % Professional skills bar 92 | \newcommand\proskills[1]{ 93 | \ifthenelse{\equal{#1}{}}{\booltrue{proempty}}{\renewcommand{\proskills}{% 94 | \foreach [count=\i] \x/\y in {#1}{ 95 | {\x}\\ 96 | \ifthenelse{\equal{\thecolumn}{0}}{ 97 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, 98 | heightr=1, linecolor=sidebartext, filledcolor=sidebarbackground, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 99 | }{ 100 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 101 | } 102 | } 103 | }} 104 | } 105 | 106 | % Command for drawing language skill circles 107 | % Adapted from AltaCV Template: https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv 108 | \newcommand\langskills[1]{% 109 | \ifthenelse{\equal{#1}{}}{\booltrue{langempty}}{\renewcommand{\langskills}{% 110 | \renewcommand{\arraystretch}{1.4} 111 | \foreach [count=\i] \x/\y in {#1}{% 112 | \begin{tabular*}{\columnwidth}{@{}L{.4\columnwidth}L{.6\columnwidth}} 113 | {\x} & 114 | \foreach \z in {1,...,5}{% 115 | {\ifnumgreater{\z}{\y}{\color{bodytext!30}}{\color{bodytext}}\small{\faCircle}}}\\ 116 | \end{tabular*} 117 | } 118 | }} 119 | } 120 | -------------------------------------------------------------------------------- /cv-themes/coral.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{F5F5F5} 3 | \definecolor{sidebarbackground}{HTML}{353535} 4 | \definecolor{sidebartitle}{HTML}{FFFFFF} 5 | \definecolor{sidebartext}{HTML}{FFFFFF} 6 | \definecolor{bodytitle}{HTML}{353535} 7 | \definecolor{bodytext}{HTML}{353535} 8 | \definecolor{bulletcolor}{HTML}{353535} 9 | \definecolor{linkcolor}{HTML}{EF6F6C} 10 | \definecolor{linecolor}{HTML}{EF6F6C} 11 | \definecolor{name}{HTML}{353535} 12 | \definecolor{jobtitle}{HTML}{353535} 13 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 14 | 15 | % Heading styles 16 | \titleformat{\section} 17 | {\color{bodytitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 18 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 19 | 20 | \titleformat{\subsection} 21 | {\color{sidebartitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 22 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 23 | 24 | \titleformat{\subsubsection} 25 | {\color{bodytitle}\fontsize{12pt}{12pt}\sffamily\addfontfeature{LetterSpace=2}} 26 | {}{0pt}{} 27 | 28 | \titlespacing*{\section}{0pt}{0.5cm}{0.4cm} 29 | \titlespacing*{\subsection}{0pt}{0.5cm}{0.4cm} 30 | \titlespacing*{\subsubsection}{0pt}{0.5cm}{0.1cm} 31 | 32 | % Defining font styles 33 | \newcommand{\sname}{\color{name}\fontsize{46pt}{46pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 34 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{22pt}{22pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 35 | 36 | % Defining page styles 37 | \pagestyle{fancy} 38 | \fancypagestyle{firstpagestyle}{ 39 | \fancyhf{} 40 | \renewcommand{\headrulewidth}{0pt} 41 | \renewcommand{\footrulewidth}{0pt} 42 | \fancyhead[C]{% 43 | \begin{tikzpicture}[remember picture,overlay] 44 | \node [rectangle, fill=sidebarbackground, anchor=north west, minimum width=8cm, minimum height=\paperheight+2cm] at ($(current page.north west)-(1cm,5.5cm)$) {}; 45 | \end{tikzpicture} 46 | } 47 | } 48 | 49 | \fancyhf{} 50 | \renewcommand{\headrulewidth}{0pt} 51 | \renewcommand{\footrulewidth}{0pt} 52 | \fancyhead[C]{% 53 | \begin{tikzpicture}[remember picture,overlay] 54 | \node [rectangle, fill=sidebarbackground, anchor=north west, minimum width=8cm, minimum height=\paperheight+2cm] at ($(current page.north west)-(1cm,-1cm)$) {}; 55 | \end{tikzpicture} 56 | } 57 | 58 | % Layout for name, job title and sidebar 59 | \setcolumnwidth{5cm,12cm} 60 | \setlength{\columnsep}{1.5cm} 61 | \columncolor{sidebartext}[0] 62 | \columncolor{bodytext}[1] 63 | 64 | \newcommand{\makeprofile}{ 65 | \vspace*{-1.5cm} 66 | \begin{center} 67 | \thispagestyle{firstpagestyle} 68 | {\setstretch{3} 69 | \begin{adjustbox}{minipage=[c][2.5cm]{.9\textwidth}} 70 | \centering 71 | {\sname\name} 72 | \end{adjustbox}} 73 | 74 | {\setstretch{1.8} 75 | \begin{adjustbox}{minipage=[c][1.5cm]{.9\textwidth}} 76 | \centering 77 | {\sjobtitle\jobtitle} 78 | \end{adjustbox}} 79 | \end{center} 80 | \bigskip 81 | } 82 | 83 | % Margins 84 | \RequirePackage[left=1cm, right=1cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 85 | 86 | % Personal skills bar 87 | \newcommand\perskills[1]{ 88 | \ifthenelse{\equal{#1}{}}{\booltrue{perempty}}{\renewcommand{\perskills}{% 89 | \foreach [count=\i] \x/\y in {#1}{ 90 | {\x}\\ 91 | \ifthenelse{\equal{\thecolumn}{0}}{ 92 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=linecolor, filledcolor=linecolor, borderwidth=1pt, emptycolor=sidebarbackground]{\y}\par\smallskip 93 | }{ 94 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 95 | } 96 | } 97 | }} 98 | } 99 | 100 | % Professional skills bar 101 | \newcommand\proskills[1]{ 102 | \ifthenelse{\equal{#1}{}}{\booltrue{proempty}}{\renewcommand{\proskills}{% 103 | \foreach [count=\i] \x/\y in {#1}{ 104 | {\x}\\ 105 | \ifthenelse{\equal{\thecolumn}{0}}{ 106 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0,heightr=1, linecolor=linecolor, filledcolor=linecolor, borderwidth=1pt, emptycolor=sidebarbackground]{\y}\par\smallskip 107 | }{ 108 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 109 | } 110 | } 111 | }} 112 | } 113 | 114 | % Command for drawing language skill circles 115 | % Adapted from AltaCV Template: https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv 116 | \newcommand\langskills[1]{% 117 | \ifthenelse{\equal{#1}{}}{\booltrue{langempty}}{\renewcommand{\langskills}{% 118 | \renewcommand{\arraystretch}{1.4} 119 | \foreach [count=\i] \x/\y in {#1}{% 120 | \begin{tabular*}{\columnwidth}{@{}L{.4\columnwidth}L{.6\columnwidth}} 121 | {\x} & 122 | \foreach \z in {1,...,5}{% 123 | {\ifnumgreater{\z}{\y}{\color{sidebarbackground!30}}{\color{linecolor}}\small{\faCircle}}}\\ 124 | \end{tabular*} 125 | } 126 | }} 127 | } 128 | -------------------------------------------------------------------------------- /cv-themes/framed.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{sidebarbackground}{HTML}{ECEAEA} 4 | \definecolor{sidebartitle}{HTML}{564E4E} 5 | \definecolor{sidebartext}{HTML}{564E4E} 6 | \definecolor{bodytitle}{HTML}{564E4E} 7 | \definecolor{bodytext}{HTML}{564E4E} 8 | \definecolor{bulletcolor}{HTML}{564E4E} 9 | \definecolor{linkcolor}{HTML}{3E78B2} 10 | \definecolor{linecolor}{HTML}{564E4E} 11 | \definecolor{name}{HTML}{564E4E} 12 | \definecolor{jobtitle}{HTML}{564E4E} 13 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 14 | 15 | % Heading styles 16 | \titleformat{\section} 17 | {\color{bodytitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 18 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 19 | 20 | \titleformat{\subsection} 21 | {\color{sidebartitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 22 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 23 | 24 | \titleformat{\subsubsection} 25 | {\color{bodytitle}\fontsize{12pt}{12pt}\sffamily\addfontfeature{LetterSpace=2}} 26 | {}{0pt}{} 27 | 28 | \titlespacing*{\section}{0pt}{0.5cm}{0.4cm} 29 | \titlespacing*{\subsection}{0pt}{0.5cm}{0.4cm} 30 | \titlespacing*{\subsubsection}{0pt}{0.5cm}{0.1cm} 31 | 32 | % Defining font styles 33 | \newcommand{\sname}{\color{name}\fontsize{40pt}{40pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 34 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{20pt}{20pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 35 | 36 | % Defining page styles 37 | \pagestyle{fancy} 38 | \fancyhf{} 39 | \renewcommand{\headrulewidth}{0pt} 40 | \renewcommand{\footrulewidth}{0pt} 41 | \fancyhead[C]{% 42 | \begin{tikzpicture}[remember picture,overlay] 43 | \node [rectangle, fill=sidebarbackground, anchor=north west, minimum width=8cm, minimum height=\paperheight+2cm] at ($(current page.north west)-(1cm,-1cm)$) {}; 44 | \draw [line width=1pt, color=linecolor] ($(current page.north west)+(7cm,2cm)$) -- ($(current page.south west)+(7cm,-2cm)$); 45 | \end{tikzpicture} 46 | } 47 | 48 | % Layout for name, job title and sidebar 49 | \setcolumnwidth{5cm,12cm} 50 | \setlength{\columnsep}{1.5cm} 51 | \columncolor{sidebartext}[0] 52 | \columncolor{bodytext}[1] 53 | 54 | \newcommand{\makeprofile}{% 55 | \vspace*{-1.5cm} 56 | \begin{center} 57 | {\setstretch{3} 58 | \begin{adjustbox}{padding=6.35cm 0pt 0pt 0pt,minipage=[c][2.5cm]{12cm}} 59 | {\sname\name} 60 | \end{adjustbox}} 61 | 62 | {\setstretch{1.8} 63 | \begin{adjustbox}{padding=6.35cm 0pt 0pt 0pt,minipage=[c][1.5cm]{12cm}} 64 | {\sjobtitle\jobtitle} 65 | \end{adjustbox}} 66 | \end{center} 67 | \bigskip 68 | \ifthenelse{\equal{\profilepic}{}}{}{% 69 | \begin{tikzpicture}[remember picture,overlay] 70 | \node[rectangle, minimum height=4cm, minimum width=4cm, path picture={ 71 | \node at (path picture bounding box.center){\includegraphics[width=4cm]{\profilepic}};}] at ($(current page.north west)+(3.5cm,-3cm)$) {}; 72 | \end{tikzpicture} 73 | } 74 | } 75 | 76 | % Margins 77 | \RequirePackage[left=1cm, right=1cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 78 | 79 | % Personal skills bar 80 | \newcommand\perskills[1]{% 81 | \ifthenelse{\equal{#1}{}}{\booltrue{perempty}}{\renewcommand{\perskills}{% 82 | \foreach [count=\i] \x/\y in {#1}{ 83 | {\x}\\ 84 | \ifthenelse{\equal{\thecolumn}{0}}{ 85 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=linecolor, filledcolor=sidebartext, borderwidth=1pt, emptycolor=sidebarbackground]{\y}\par\smallskip 86 | }{ 87 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 88 | } 89 | } 90 | }} 91 | } 92 | 93 | % Professional skills bar 94 | \newcommand\proskills[1]{% 95 | \ifthenelse{\equal{#1}{}}{\booltrue{proempty}}{\renewcommand{\proskills}{% 96 | \foreach [count=\i] \x/\y in {#1}{% 97 | {\x}\\ 98 | \ifthenelse{\equal{\thecolumn}{0}}{% 99 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=linecolor, filledcolor=sidebartext, borderwidth=1pt, emptycolor=sidebarbackground]{\y}\par\smallskip 100 | }{ 101 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 102 | } 103 | } 104 | }} 105 | } 106 | 107 | % Command for drawing language skill circles 108 | % Adapted from AltaCV Template: https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv 109 | \newcommand\langskills[1]{% 110 | \ifthenelse{\equal{#1}{}}{\booltrue{langempty}}{\renewcommand{\langskills}{% 111 | \renewcommand{\arraystretch}{1.4} 112 | \foreach [count=\i] \x/\y in {#1}{% 113 | \begin{tabular*}{\columnwidth}{@{}L{.4\columnwidth}L{.6\columnwidth}} 114 | {\x} & 115 | \foreach \z in {1,...,5}{% 116 | {\ifnumgreater{\z}{\y}{\color{bodytext!50}}{\color{bodytext}}\small{\faCircle}}}\\ 117 | \end{tabular*} 118 | } 119 | }} 120 | } 121 | -------------------------------------------------------------------------------- /cover-letter-themes/theme_selection.tex: -------------------------------------------------------------------------------- 1 | %---------------------------------------------------------------------------------------- 2 | % THEMES 3 | %---------------------------------------------------------------------------------------- 4 | 5 | \RequirePackage{etoolbox} 6 | \RequirePackage{ifthen} 7 | \RequirePackage{xifthen} 8 | \newbool{langempty} 9 | \newbool{proempty} 10 | \newbool{perempty} 11 | 12 | \newcommand{\theme}[1]{ 13 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{bw}}}{% 14 | \input{cover-letter-themes/bw.tex}}{} 15 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{gray}}}{% 16 | \input{cover-letter-themes/gray.tex}}{} 17 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{minimal}}}{% 18 | \input{cover-letter-themes/minimal.tex}}{} 19 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{blue}}}{% 20 | \input{cover-letter-themes/blue.tex}}{} 21 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{beige}}}{% 22 | \input{cover-letter-themes/beige.tex}}{} 23 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{coral}}}{% 24 | \input{cover-letter-themes/coral.tex}}{} 25 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{framed}}}{% 26 | \input{cover-letter-themes/framed.tex}}{} 27 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{onyx}}}{% 28 | \input{cover-letter-themes/onyx.tex}}{} 29 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{plain}}}{% 30 | \input{cover-letter-themes/plain.tex}}{} 31 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{earth}}}{% 32 | \input{cover-letter-themes/earth.tex}}{} 33 | } 34 | 35 | %---------------------------------------------------------------------------------------- 36 | % FONTS 37 | %---------------------------------------------------------------------------------------- 38 | 39 | \RequirePackage[final]{microtype} 40 | \RequirePackage{fontspec} 41 | \setmainfont[Path= fonts/, 42 | BoldFont = NunitoSans-SemiBold.ttf, 43 | ItalicFont = NunitoSans-Italic.ttf] 44 | {NunitoSans-Regular.ttf} 45 | 46 | \setsansfont[Path= fonts/, 47 | BoldFont = Archivo-SemiBold.ttf] 48 | {Archivo-Regular.ttf} 49 | 50 | %---------------------------------------------------------------------------------------- 51 | % PACKAGES 52 | %---------------------------------------------------------------------------------------- 53 | 54 | \RequirePackage{tikz} 55 | \usetikzlibrary{calc, positioning} 56 | \RequirePackage{xcolor} 57 | \RequirePackage{parskip} 58 | \RequirePackage{setspace} 59 | \RequirePackage{tabularx} 60 | \RequirePackage{multirow} 61 | \RequirePackage[fixed]{fontawesome5} 62 | \RequirePackage[nobottomtitles]{titlesec} 63 | \RequirePackage{graphicx} 64 | \RequirePackage{enumitem} 65 | \RequirePackage{fancyhdr} 66 | \RequirePackage[most]{tcolorbox} 67 | \RequirePackage{paracol} 68 | \RequirePackage{booktabs} 69 | \RequirePackage{lipsum} 70 | \RequirePackage{adjustbox} 71 | \setstretch{1.2} 72 | 73 | %---------------------------------------------------------------------------------------- 74 | % MISC CONFIGURATIONS 75 | %---------------------------------------------------------------------------------------- 76 | 77 | \pagestyle{empty} 78 | \setlength{\parindent}{0pt} % Disable paragraph indentation 79 | \setlength{\parskip}{6pt} % Space between paragraphs 80 | \emergencystretch 3em 81 | 82 | % Graphics directories 83 | \graphicspath{{../images/}{images/}} 84 | 85 | %---------------------------------------------------------------------------------------- 86 | % COMMANDS 87 | %---------------------------------------------------------------------------------------- 88 | 89 | % Define custom commands for cover letter 90 | \newcommand{\jobtitle}[1]{\renewcommand{\jobtitle}{#1}} 91 | \newcommand{\name}[1]{\renewcommand{\name}{#1}} 92 | \newcommand{\location}[1]{\renewcommand{\location}{#1}} 93 | \newcommand{\phone}[1]{\renewcommand{\phone}{#1}} 94 | \newcommand{\mail}[1]{\renewcommand{\mail}{#1}} 95 | \newcommand{\profilepic}[1]{\renewcommand{\profilepic}{#1}} 96 | \newcommand{\employerinfo}[1]{\renewcommand{\employerinfo}{#1}} 97 | \newcommand{\letterspace}{\vspace*{\baselineskip}} 98 | \newcommand{\makeabout}{\ifthenelse{\equal{\aboutdesc}{}}{}{\aboutdesc}} 99 | \newcommand{\makedob}{\ifthenelse{\equal{\dateofbirth}{}}{}{\dateofbirth}} 100 | \newcommand{\makelicense}{\ifthenelse{\equal{\drivinglicenses}{}}{}{\drivinglicenses}} 101 | \newcommand{\makeemployerinfo}{\ifthenelse{\equal{\employerinfo}{}}{}{% 102 | \employerinfo 103 | \letterspace 104 | }} 105 | 106 | % Defining icons 107 | \newcommand{\phoneicon}{\small{\faPhone*}} 108 | \newcommand{\locicon}{\faMapMarker*} 109 | \newcommand{\mailicon}{\faEnvelope} 110 | \newcommand{\githubicon}{\faGithub} 111 | \newcommand{\linkedinicon}{\faLinkedin} 112 | 113 | % Defining table column types 114 | \newcolumntype{Y}[1]{>{\arraybackslash\centering}m{#1}} 115 | \newcolumntype{R}[1]{>{\arraybackslash\raggedright}m{#1}} 116 | \newcolumntype{C}{>{\centering\arraybackslash}X} 117 | \newcolumntype{L}[1]{>{\let\newline\\\arraybackslash\hspace{0pt}}p{#1}} 118 | 119 | % Bullet style and spacing 120 | \setlist[itemize,1]{label={\color{bulletcolor}$\bullet$},parsep=6pt,labelindent=12pt} 121 | \setlist[itemize,2]{label={\color{bulletcolor}$\bullet$},parsep=6pt,labelindent=12pt} 122 | \setlist[itemize,3]{label={\color{bulletcolor}$\bullet$},parsep=6pt,labelindent=12pt} 123 | 124 | % Links 125 | \RequirePackage[bookmarks=false, colorlinks]{hyperref} 126 | \hypersetup{linkcolor=linkcolor, urlcolor=linkcolor} 127 | \makeatletter 128 | \def\Hy@href#{% 129 | \addfontfeatures{Color=linkcolor}\hyper@normalise\href@ 130 | } 131 | \makeatother 132 | -------------------------------------------------------------------------------- /cv-themes/gray.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{sidebarbackground}{HTML}{f3f3f4} 4 | \definecolor{headercolor}{HTML}{6c6c6d} 5 | \definecolor{sidebartitle}{HTML}{24272B} 6 | \definecolor{sidebartext}{HTML}{6c6c6d} 7 | \definecolor{bodytitle}{HTML}{24272B} 8 | \definecolor{bodytext}{HTML}{6c6c6d} 9 | \definecolor{bulletcolor}{HTML}{6c6c6d} 10 | \definecolor{linkcolor}{HTML}{3E78B2} 11 | \definecolor{linecolor}{HTML}{24272B} 12 | \definecolor{name}{HTML}{FFFFFF} 13 | \definecolor{jobtitle}{HTML}{FFFFFF} 14 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 15 | 16 | % Heading styles 17 | \titleformat{\section} 18 | {\color{bodytitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 19 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 20 | 21 | \titleformat{\subsection} 22 | {\color{sidebartitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=2}} 23 | {}{0pt}{}[{\color{linecolor}\titlerule[1pt]}] 24 | 25 | \titleformat{\subsubsection} 26 | {\color{bodytitle}\fontsize{12pt}{12pt}\sffamily\addfontfeature{LetterSpace=2}} 27 | {}{0pt}{} 28 | 29 | \titlespacing*{\section}{0pt}{0.5cm}{0.4cm} 30 | \titlespacing*{\subsection}{0pt}{0.5cm}{0.4cm} 31 | \titlespacing*{\subsubsection}{0pt}{0.5cm}{0.1cm} 32 | 33 | % Defining font styles 34 | \newcommand{\sname}{\color{name}\fontsize{36pt}{36pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 35 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{20pt}{20pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 36 | 37 | % Defining page styles 38 | \pagestyle{fancy} 39 | \fancypagestyle{firstpagestyle}{ 40 | \fancyhf{} 41 | \renewcommand{\headrulewidth}{0pt} 42 | \renewcommand{\footrulewidth}{0pt} 43 | \fancyhead[C]{% 44 | \begin{tikzpicture}[remember picture,overlay] 45 | \node [rectangle, fill=headercolor, anchor=north west, minimum width=\paperwidth+1cm, minimum height=7.5cm] at ($(current page.north west)+(-1cm,1cm)$) {}; 46 | \node [rectangle, fill=sidebarbackground, anchor=north west, minimum width=7cm, minimum height=\paperheight-2cm] at ($(current page.north west)+(1cm,-1cm)$) {}; 47 | \end{tikzpicture} 48 | } 49 | } 50 | 51 | \fancyhf{} 52 | \renewcommand{\headrulewidth}{0pt} 53 | \renewcommand{\footrulewidth}{0pt} 54 | \fancyhead[C]{% 55 | \begin{tikzpicture}[remember picture,overlay] 56 | \node [rectangle, fill=sidebarbackground, anchor=north west, minimum width=7cm, minimum height=\paperheight-2cm] at ($(current page.north west)+(1cm,-1cm)$) {}; 57 | \end{tikzpicture} 58 | } 59 | 60 | % Layout for name, job title and sidebar 61 | \setcolumnwidth{6cm,11.5cm} 62 | \setlength{\columnsep}{1cm} 63 | \columncolor{sidebartext}[0] 64 | \columncolor{bodytext}[1] 65 | 66 | \newcommand{\makeprofile}{% 67 | \thispagestyle{firstpagestyle} 68 | \vspace*{-1cm} 69 | {\setstretch{3} 70 | \begin{adjustbox}{padding=7.0cm 0pt 0pt 0pt,minipage=[c][2.5cm]{11.5cm}} 71 | {\sname\name} 72 | \end{adjustbox}} 73 | 74 | {\setstretch{1.8} 75 | \begin{adjustbox}{padding=7.0cm 0pt 0pt 0pt,minipage=[c][1.5cm]{11.5cm}} 76 | {\sjobtitle\jobtitle} 77 | \end{adjustbox}} 78 | \vspace{2\bigskipamount} 79 | \ifthenelse{\equal{\profilepic}{}}{}{% 80 | \begin{tikzpicture}[remember picture,overlay] 81 | \node[circle,minimum width=4cm, path picture={ 82 | \node at (path picture bounding box.center){\includegraphics[width=4cm]{\profilepic}};}] at ($(current page.north west)+(4.5cm,-3.5cm)$) {}; 83 | \end{tikzpicture} 84 | } 85 | } 86 | 87 | % Margins 88 | \RequirePackage[left=1.5cm, right=1cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 89 | 90 | % Personal skills bar 91 | \newcommand\perskills[1]{% 92 | \ifthenelse{\equal{#1}{}}{\booltrue{perempty}}{\renewcommand{\perskills}{% 93 | \foreach [count=\i] \x/\y in {#1}{ 94 | {\x}\\ 95 | \ifthenelse{\equal{\thecolumn}{0}}{% 96 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=linecolor, filledcolor=sidebartext, borderwidth=1pt, emptycolor=sidebarbackground]{\y}\par\smallskip 97 | }{% 98 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 99 | } 100 | } 101 | }} 102 | } 103 | 104 | % Professional skills bar 105 | \newcommand\proskills[1]{% 106 | \ifthenelse{\equal{#1}{}}{\booltrue{proempty}}{\renewcommand{\proskills}{% 107 | \foreach [count=\i] \x/\y in {#1}{% 108 | {\x}\\ 109 | \ifthenelse{\equal{\thecolumn}{0}}{% 110 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=linecolor, filledcolor=sidebartext, borderwidth=1pt, emptycolor=sidebarbackground]{\y}\par\smallskip 111 | }{% 112 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 113 | } 114 | } 115 | }} 116 | } 117 | 118 | % Command for drawing language skill circles 119 | % Adapted from AltaCV Template: https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv 120 | \newcommand\langskills[1]{% 121 | \ifthenelse{\equal{#1}{}}{\booltrue{langempty}}{\renewcommand{\langskills}{% 122 | \renewcommand{\arraystretch}{1.4} 123 | \foreach [count=\i] \x/\y in {#1}{% 124 | \begin{tabular*}{\columnwidth}{@{}L{.4\columnwidth}L{.6\columnwidth}} 125 | {\x} & 126 | \foreach \z in {1,...,5}{% 127 | {\ifnumgreater{\z}{\y}{\color{bodytext!30}}{\color{bodytext}}\small{\faCircle}}}\\ 128 | \end{tabular*} 129 | } 130 | }} 131 | } 132 | -------------------------------------------------------------------------------- /CV-Template.tex: -------------------------------------------------------------------------------- 1 | \documentclass[10pt, a4paper]{article} 2 | 3 | \input{cv-themes/theme_selection.tex} 4 | 5 | %---------------------------------------------------------------------------------------- 6 | % THEMES 7 | %---------------------------------------------------------------------------------------- 8 | 9 | % Define the desired theme out of the following: beige, blue, bw, coral, earth, framed, gray, minimal, onyx, plain 10 | % See screenshots in preview/ directory 11 | \theme{beige} 12 | 13 | %---------------------------------------------------------------------------------------- 14 | % PERSONAL INFORMATION 15 | %---------------------------------------------------------------------------------------- 16 | 17 | % If you don't need a particular field, just remove the content leaving the command, e.g. \aboutdesc{} 18 | 19 | \name{Name Surname} % Your name 20 | \jobtitle{Job Title} % Job title/career 21 | \profilepic{dummy_pp.jpg} % Profile picture (supported only with "bw", "gray" and "framed" themes) 22 | \aboutdesc{Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.} % Description for ABOUT ME section 23 | \location{City, State} % Address/location 24 | \phone{080-3345-443} % Phone number 25 | \mail{email@domain.com} % Mail 26 | \dateofbirth{22 May 1990} % Date of birth 27 | \drivinglicenses{Category B} % Drivers license category 28 | \linkedin{\href{https://www.linkedin.com/home}{linkedin.com/your-profile}} % \linkedin{\href{LINK}{DESCRIPTION}} 29 | \github{\href{https://github.com/}{github.com/your-profile}} % \github{\href{{LINK}{DESCRIPTION}} 30 | 31 | %---------------------------------------------------------------------------------------- 32 | % SKILLS 33 | %---------------------------------------------------------------------------------------- 34 | 35 | % Both proskills and perskills can be used separately or together. If you do not plan to use professional and personal skill charts, just remove the content leaving the command, e.g. \perskills{} or \proskills{} 36 | 37 | % Define professional skills (values are from interval [0,1]) 38 | \proskills{{PHP/0.9},{Java/0.7},{Python/0.45}} 39 | %\proskills{} 40 | 41 | % Define personal skills (values are from interval [0,1]) 42 | \perskills{{Communication skills/0.8},{Team Work/0.7}} 43 | %\perskills{} 44 | 45 | % Define language skills (values are from interval [0,5). If you do not plan to use the language skills chart, just remove the content leaving the command, e.g. \langskills{} 46 | % Language skill circles are designed to be included into the sidebar 47 | \langskills{{English/5},{German/3}} 48 | %\langskills{} 49 | 50 | \begin{document} 51 | 52 | \makeprofile % Print name & job description. Also prints out profile picture if it's supported by the theme 53 | 54 | \begincols 55 | 56 | %---------------------------------------------------------------------------------------- 57 | % SIDEBAR 58 | %---------------------------------------------------------------------------------------- 59 | % Use \subsection inside the sidebar 60 | 61 | % Print defined contact information 62 | % \makecontact{NAME FOR CONTACT SECTION} 63 | \makecontact{CONTACT} 64 | 65 | % \makedob{NAME FOR DATE OF BIRTH SECTION} 66 | \makedob{DATE OF BIRTH} 67 | 68 | % \makelicense{NAME FOR ABOUT ME SECTION} 69 | \makeabout{ABOUT ME} 70 | 71 | % \makelicense{NAME FOR DRIVING LICENSE SECTION} 72 | \makelicense{DRIVING LICENSE} 73 | 74 | \subsection{LANGUAGES} 75 | \langcircles % Command for drawing language skill circles 76 | 77 | \subsection{PERSONAL} 78 | \perskills % Command for drawing personal skill bars. 79 | 80 | %\subsection{PROFESSIONAL} 81 | %\proskills % Command for drawing professional skill bars. 82 | 83 | %---------------------------------------------------------------------------------------- 84 | % BODY 85 | %---------------------------------------------------------------------------------------- 86 | % Use \section inside the body 87 | \switchcols % This command is used to switch to the document body 88 | 89 | \section{WORK EXPERIENCE} 90 | 91 | % \begin{cvitem}{Job title}{Company name}{Location}{Duration} 92 | % Job description 93 | % \end{cvitem} 94 | % To add bullets inside the job description: 95 | % \begin{cvitem}{Job title}{Company name}{Location}{Duration} 96 | % \begin{itemize} 97 | % \item 98 | % \end{itemize} 99 | % \end{cvitem} 100 | 101 | \begin{cvitem}{Job title}{Company}{Location}{Duration} 102 | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. 103 | \begin{itemize} 104 | \item Lorem ipsum dolor sit amet 105 | \end{itemize} 106 | \end{cvitem} 107 | 108 | \section{EDUCATION} 109 | 110 | % \begin{cvitem}{Education level}{College/High school}{Location}{Duration} 111 | % Description 112 | % \end{cvitem} 113 | 114 | \begin{cvitem}{Masters degree}{College/High school}{Location}{2010-2014} 115 | Lorem ipsum dolor sit amet. 116 | \end{cvitem} 117 | 118 | \section{LANGUAGES} 119 | 120 | \begin{langs} 121 | % \langsitem{Language}{Native} % Optionally add \cline{2-3} after a row to insert a semi-line between languages 122 | \langsitem{English}{Native} \cline{2-3} 123 | % \langsitemmulti{Language}{Understanding level}{Speaking level}{Writing level} 124 | \langsitemmulti{German}{B1}{B2}{B1} 125 | \end{langs} 126 | 127 | \cefrdesc % Use this to add CEFR description, otherwise delete or comment it out 128 | 129 | \section{PROJECTS} 130 | 131 | % \begin{projitem}{Project name}{\href{link}{link description}} 132 | % Project description 133 | % \end{projitem} 134 | 135 | \begin{projitem}{Project name}{\href{https://link}{project link}} 136 | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. 137 | \end{projitem} 138 | 139 | % Use \skillsbars to draw professional skill bars next to the personal skill bars 140 | % \skillsbars{NAME FOR PROFESSIONAL SKILLS SECTION}{NAME FOR PROFESSIONAL SKILLS SECTION} 141 | \skillsbars{PROFESSIONAL}{PERSONAL} 142 | 143 | \fincols 144 | \end{document} 145 | -------------------------------------------------------------------------------- /cv-themes/earth.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{headercolor}{HTML}{353839} 4 | \definecolor{sidebartitle}{HTML}{353839} 5 | \definecolor{bodytitle}{HTML}{353839} 6 | \definecolor{sidebartext}{HTML}{353839} 7 | \definecolor{altconttext}{HTML}{FFFFFF} 8 | \definecolor{bodytext}{HTML}{353839} 9 | \definecolor{bulletcolor}{HTML}{353839} 10 | \definecolor{linkcolor}{HTML}{FFFFFF} 11 | \definecolor{linecolor}{HTML}{E1A95F} 12 | \definecolor{name}{HTML}{FFFFFF} 13 | \definecolor{jobtitle}{HTML}{FFFFFF} 14 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 15 | 16 | % Heading styles 17 | \titleformat{\section} 18 | {\color{bodytitle}\fontsize{16pt}{16pt}\sffamily\bfseries\addfontfeature{LetterSpace=2}} 19 | {}{0pt}{} 20 | 21 | \titleformat{\subsection} 22 | {\color{sidebartitle}\fontsize{16pt}{16pt}\sffamily\bfseries\addfontfeature{LetterSpace=2}} 23 | {}{0pt}{} 24 | 25 | \titleformat{\subsubsection} 26 | {\color{bodytitle}\fontsize{12pt}{12pt}\sffamily\addfontfeature{LetterSpace=2}} 27 | {}{0pt}{} 28 | 29 | \titlespacing*{\section}{0pt}{0.5cm}{0.4cm} 30 | \titlespacing*{\subsection}{0pt}{0.5cm}{0.4cm} 31 | \titlespacing*{\subsubsection}{0pt}{0.5cm}{0.1cm} 32 | 33 | % Defining font styles 34 | \newcommand{\sname}{\color{name}\fontsize{26pt}{26pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 35 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{16pt}{16pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 36 | 37 | % Defining page styles 38 | \pagestyle{fancy} 39 | \fancypagestyle{firstpagestyle}{% 40 | \fancyhf{} 41 | \renewcommand{\headrulewidth}{0pt} 42 | \renewcommand{\footrulewidth}{0pt} 43 | \fancyhead[C]{% 44 | \begin{tikzpicture}[remember picture,overlay] 45 | \node [rectangle, fill=headercolor, anchor=north west, minimum width=\paperwidth+1cm, minimum height=6.5cm] at ($(current page.north west)+(-1cm,1cm)$) {}; 46 | \draw [line width=1pt, color=linecolor] ($(current page.north west)+(7cm,-6cm)$) -- ($(current page.south west)+(7cm,1cm)$); 47 | \end{tikzpicture} 48 | } 49 | } 50 | 51 | \fancyhf{} 52 | \renewcommand{\headrulewidth}{0pt} 53 | \renewcommand{\footrulewidth}{0pt} 54 | \fancyhead[C]{% 55 | \begin{tikzpicture}[remember picture,overlay] 56 | \draw [line width=1pt, color=linecolor] ($(current page.north west)+(7cm,-1cm)$) -- ($(current page.south west)+(7cm,1cm)$); 57 | \end{tikzpicture} 58 | } 59 | 60 | % Layout for name, job title and sidebar 61 | \setcolumnwidth{5cm,12cm} 62 | \setlength{\columnsep}{1.5cm} 63 | \columncolor{sidebartext}[0] 64 | \columncolor{bodytext}[1] 65 | 66 | \newcommand{\makeprofile}{% 67 | \vspace*{-1.5cm} 68 | \begin{center} 69 | \thispagestyle{firstpagestyle} 70 | {\setstretch{3} 71 | \begin{adjustbox}{minipage=[c][1.5cm]{.8\textwidth}, cfbox=linecolor 1.5pt} 72 | \centering 73 | {\sname\name} 74 | \end{adjustbox}} 75 | 76 | {\setstretch{1.8} 77 | \begin{adjustbox}{minipage=[c][0.5cm]{.9\textwidth}} 78 | \centering 79 | {\sjobtitle\jobtitle} 80 | \end{adjustbox}} 81 | 82 | \vspace{1\bigskipamount} 83 | \altcontact 84 | \vspace{1\bigskipamount} 85 | \end{center} 86 | } 87 | 88 | % Contact table 89 | \newcommand{\altcontact}{% 90 | \renewcommand{\arraystretch}{1.3} 91 | {\color{altconttext} 92 | \begin{tabularx}{\textwidth}{CCC} 93 | \ifthenelse{\equal{\location}{}}{}{\locicon\quad \location} & 94 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\quad \phone} & 95 | \ifthenelse{\equal{\mail}{}}{}{\calendaricon\quad \dateofbirth \\} 96 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\quad \href{mailto:\mail}{\mail} &} 97 | \ifthenelse{\equal{\linkedin}{}}{}{\linkedinicon\quad \linkedin &} 98 | \ifthenelse{\equal{\github}{}}{\\}{\githubicon\quad \github \\} 99 | \end{tabularx} 100 | } 101 | } 102 | 103 | % Margins 104 | \RequirePackage[left=1cm, right=1cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 105 | 106 | % Personal skills bar 107 | \newcommand\perskills[1]{% 108 | \ifthenelse{\equal{#1}{}}{\booltrue{perempty}}{\renewcommand{\perskills}{% 109 | \foreach [count=\i] \x/\y in {#1}{% 110 | {\x}\\ 111 | \ifthenelse{\equal{\thecolumn}{0}}{% 112 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 113 | }{% 114 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 115 | } 116 | } 117 | }} 118 | } 119 | 120 | % Professional skills bar 121 | \newcommand\proskills[1]{% 122 | \ifthenelse{\equal{#1}{}}{\booltrue{proempty}}{\renewcommand{\proskills}{% 123 | \foreach [count=\i] \x/\y in {#1}{% 124 | {\x}\\ 125 | \ifthenelse{\equal{\thecolumn}{0}}{% 126 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 127 | }{% 128 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 129 | } 130 | } 131 | }} 132 | } 133 | 134 | % Command for drawing language skill circles 135 | % Adapted from AltaCV Template: https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv 136 | \newcommand\langskills[1]{% 137 | \ifthenelse{\equal{#1}{}}{\booltrue{langempty}}{\renewcommand{\langskills}{% 138 | \renewcommand{\arraystretch}{1.4} 139 | \foreach [count=\i] \x/\y in {#1}{% 140 | \begin{tabular*}{\columnwidth}{@{}L{.4\columnwidth}L{.6\columnwidth}} 141 | {\x} & 142 | \foreach \z in {1,...,5}{% 143 | {\ifnumgreater{\z}{\y}{\color{bodytext!50}}{\color{bodytext}}\small{\faCircle}}}\\ 144 | \end{tabular*} 145 | } 146 | }} 147 | } 148 | -------------------------------------------------------------------------------- /cv-themes/onyx.tex: -------------------------------------------------------------------------------- 1 | % Colors 2 | \definecolor{pagebackground}{HTML}{FFFFFF} 3 | \definecolor{sidebarbackground}{HTML}{353839} 4 | \definecolor{sidebartitle}{HTML}{FFFFFF} 5 | \definecolor{sidebartext}{HTML}{FFFFFF} 6 | \definecolor{contbackground}{HTML}{DCAE71} 7 | \definecolor{altconttext}{HTML}{353839} 8 | \definecolor{bodytitle}{HTML}{353839} 9 | \definecolor{bodytext}{HTML}{353839} 10 | \definecolor{bulletcolor}{HTML}{353839} 11 | \definecolor{linkcolor}{HTML}{353839} 12 | \definecolor{linecolor}{HTML}{353839} 13 | \definecolor{name}{HTML}{353839} 14 | \definecolor{jobtitle}{HTML}{353839} 15 | \RequirePackage[pagecolor=pagebackground, nopagecolor=pagebackground]{pagecolor} 16 | 17 | % Heading styles 18 | \titleformat{\section} 19 | {\color{bodytitle}\fontsize{16pt}{16pt}\sffamily\bfseries\addfontfeature{LetterSpace=2}} 20 | {}{0pt}{} 21 | 22 | \titleformat{\subsection} 23 | {\color{sidebartitle}\fontsize{16pt}{16pt}\sffamily\bfseries\addfontfeature{LetterSpace=2}} 24 | {}{0pt}{} 25 | 26 | \titleformat{\subsubsection} 27 | {\color{bodytitle}\fontsize{12pt}{12pt}\sffamily\addfontfeature{LetterSpace=2}} 28 | {}{0pt}{} 29 | 30 | \titlespacing*{\section}{0pt}{0.5cm}{0.4cm} 31 | \titlespacing*{\subsection}{0pt}{0.5cm}{0.4cm} 32 | \titlespacing*{\subsubsection}{0pt}{0.5cm}{0.1cm} 33 | 34 | % Defining font styles 35 | \newcommand{\sname}{\color{name}\fontsize{36pt}{36pt}\sffamily\addfontfeature{LetterSpace=3}\MakeUppercase} 36 | \newcommand{\sjobtitle}{\color{jobtitle}\fontsize{18pt}{18pt}\sffamily\addfontfeature{LetterSpace=5}\MakeUppercase} 37 | 38 | % Defining page styles 39 | \pagestyle{fancy} 40 | \fancyhf{} 41 | \renewcommand{\headrulewidth}{0pt} 42 | \renewcommand{\footrulewidth}{0pt} 43 | \fancyhead[C]{% 44 | \begin{tikzpicture}[remember picture,overlay] 45 | \node [rectangle, fill=sidebarbackground, anchor=north west, minimum width=8cm, minimum height=\paperheight+2cm] at ($(current page.north west)-(1cm,-1cm)$) {}; 46 | \end{tikzpicture} 47 | } 48 | 49 | % Layout for name, job title and sidebar 50 | \setcolumnwidth{5cm,12cm} 51 | \setlength{\columnsep}{1.5cm} 52 | \columncolor{sidebartext}[0] 53 | \columncolor{bodytext}[1] 54 | 55 | \newcommand{\makeprofile}{% 56 | \vspace*{-1cm} 57 | {\setstretch{3} 58 | \begin{adjustbox}{padding=6.7cm 0pt 0pt 0pt,minipage=[c][2cm]{12cm}} 59 | {\sname\name} 60 | \end{adjustbox}} 61 | 62 | {\setstretch{1.8} 63 | \begin{adjustbox}{padding=6.7cm 0pt 0pt 0pt,minipage=[c][1cm]{12cm}} 64 | {\sjobtitle\jobtitle} 65 | \end{adjustbox}} 66 | 67 | \altcontact 68 | \vspace{1.75cm} 69 | \ifthenelse{\equal{\profilepic}{}}{}{% 70 | \begin{tikzpicture}[remember picture,overlay] 71 | \node[circle,minimum width=3.5cm, path picture={ 72 | \node at (path picture bounding box.center){\includegraphics[width=3.5cm]{\profilepic}};}] at ($(current page.north west)+(3.5cm,-2.5cm)$) {}; 73 | \end{tikzpicture} 74 | } 75 | } 76 | 77 | % Contact table 78 | \newcommand{\altcontact}{% 79 | \begin{tikzpicture}[remember picture, overlay] 80 | \node[rectangle, fill=contbackground, anchor=north, minimum height=1.8cm, minimum width=\paperwidth+3cm] at ($(current page.north)-(0cm,4.75cm)$) {% 81 | \renewcommand{\arraystretch}{1.3} 82 | \centering 83 | {\color{altconttext} 84 | \begin{tabularx}{\textwidth}{CCC} 85 | \ifthenelse{\equal{\location}{}}{}{\locicon\quad \location} & 86 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon\quad \phone} & 87 | \ifthenelse{\equal{\mail}{}}{}{\calendaricon\quad \dateofbirth \\} 88 | \ifthenelse{\equal{\mail}{}}{}{\mailicon\quad \href{mailto:\mail}{\mail} &} 89 | \ifthenelse{\equal{\linkedin}{}}{}{\linkedinicon\quad \linkedin &} 90 | \ifthenelse{\equal{\github}{}}{\\}{\githubicon\quad \github \\} 91 | \end{tabularx} 92 | } 93 | }; 94 | \end{tikzpicture} 95 | } 96 | 97 | % Margins 98 | \RequirePackage[left=1cm, right=1cm, top=1.5cm, bottom=1.5cm, footskip=0.5cm, headheight=0.5cm]{geometry} 99 | 100 | % Personal skills bar 101 | \newcommand\perskills[1]{% 102 | \ifthenelse{\equal{#1}{}}{\booltrue{perempty}}{\renewcommand{\perskills}{% 103 | \foreach [count=\i] \x/\y in {#1}{ 104 | {\x}\\ 105 | \ifthenelse{\equal{\thecolumn}{0}}{ 106 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=contbackground, filledcolor=contbackground, borderwidth=1pt, emptycolor=sidebarbackground]{\y}\par\smallskip 107 | }{ 108 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 109 | } 110 | } 111 | }} 112 | } 113 | 114 | % Professional skills bar 115 | \newcommand\proskills[1]{% 116 | \ifthenelse{\equal{#1}{}}{\booltrue{proempty}}{\renewcommand{\proskills}{% 117 | \foreach [count=\i] \x/\y in {#1}{% 118 | {\x}\\ 119 | \ifthenelse{\equal{\thecolumn}{0}}{% 120 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=contbackground, filledcolor=contbackground, borderwidth=1pt, emptycolor=sidebarbackground]{\y}\par\smallskip 121 | }{ 122 | \progressbar[width=.9\columnwidth,roundnessa=1pt, ticksheight=0, heightr=1, linecolor=bodytext, filledcolor=bodytext, borderwidth=1pt, emptycolor=pagebackground]{\y}\par\smallskip 123 | } 124 | } 125 | }} 126 | } 127 | 128 | % Command for drawing language skill circles 129 | % Adapted from AltaCV Template: https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv 130 | \newcommand\langskills[1]{% 131 | \ifthenelse{\equal{#1}{}}{\booltrue{langempty}}{\renewcommand{\langskills}{% 132 | \renewcommand{\arraystretch}{1.4} 133 | \foreach [count=\i] \x/\y in {#1}{% 134 | \begin{tabular*}{\columnwidth}{@{}L{.4\columnwidth}L{.6\columnwidth}} 135 | {\x} & 136 | \foreach \z in {1,...,5}{% 137 | {\ifnumgreater{\z}{\y}{\color{bodytext!50}}{\color{contbackground}}\small{\faCircle}}}\\ 138 | \end{tabular*} 139 | } 140 | }} 141 | } 142 | -------------------------------------------------------------------------------- /cv-themes/theme_selection.tex: -------------------------------------------------------------------------------- 1 | %---------------------------------------------------------------------------------------- 2 | % THEMES 3 | %---------------------------------------------------------------------------------------- 4 | 5 | \RequirePackage{etoolbox} 6 | \RequirePackage{ifthen} 7 | \RequirePackage{xifthen} 8 | \newbool{langempty} 9 | \newbool{proempty} 10 | \newbool{perempty} 11 | \newbool{altcont} 12 | \newbool{reverse} 13 | 14 | \newcommand{\theme}[1]{ 15 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{bw}}}{% 16 | \input{cv-themes/bw.tex}}{} 17 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{gray}}}{% 18 | \input{cv-themes/gray.tex}}{} 19 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{minimal}}}{% 20 | \input{cv-themes/minimal.tex}}{} 21 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{blue}}}{% 22 | \input{cv-themes/blue.tex}}{} 23 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{beige}}}{% 24 | \input{cv-themes/beige.tex}}{} 25 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{coral}}}{% 26 | \input{cv-themes/coral.tex}}{} 27 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{framed}}}{% 28 | \input{cv-themes/framed.tex}}{} 29 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{onyx}}}{% 30 | \booltrue{altcont} 31 | \input{cv-themes/onyx.tex}}{} 32 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{plain}}}{% 33 | \booltrue{reverse} 34 | \input{cv-themes/plain.tex}}{} 35 | \ifthenelse{\equal{\detokenize{#1}}{\detokenize{earth}}}{% 36 | \booltrue{altcont} 37 | \input{cv-themes/earth.tex}}{} 38 | } 39 | 40 | %---------------------------------------------------------------------------------------- 41 | % FONTS 42 | %---------------------------------------------------------------------------------------- 43 | 44 | \RequirePackage[final]{microtype} 45 | \RequirePackage{fontspec} 46 | \setmainfont[Path= fonts/, 47 | BoldFont = NunitoSans-SemiBold.ttf, 48 | ItalicFont = NunitoSans-Italic.ttf] 49 | {NunitoSans-Regular.ttf} 50 | 51 | \setsansfont[Path= fonts/, 52 | BoldFont = Archivo-SemiBold.ttf] 53 | {Archivo-Regular.ttf} 54 | 55 | %---------------------------------------------------------------------------------------- 56 | % PACKAGES 57 | %---------------------------------------------------------------------------------------- 58 | 59 | \RequirePackage{tikz} 60 | \usetikzlibrary{calc, positioning} 61 | \RequirePackage{xcolor} 62 | \RequirePackage{parskip} 63 | \RequirePackage{setspace} 64 | \RequirePackage{tabularx} 65 | \RequirePackage{multirow} 66 | \RequirePackage[fixed]{fontawesome5} 67 | \RequirePackage{progressbar} 68 | \RequirePackage[nobottomtitles]{titlesec} 69 | \RequirePackage{graphicx} 70 | \RequirePackage{enumitem} 71 | \RequirePackage{fancyhdr} 72 | \RequirePackage[most]{tcolorbox} 73 | \RequirePackage{paracol} 74 | \RequirePackage{booktabs} 75 | \RequirePackage{adjustbox} 76 | \setstretch{1.2} 77 | 78 | %---------------------------------------------------------------------------------------- 79 | % MISC CONFIGURATIONS 80 | %---------------------------------------------------------------------------------------- 81 | 82 | \pagestyle{empty} 83 | \setlength{\parindent}{0pt} % Disable paragraph indentation 84 | \setlength{\parskip}{6pt} % Space between paragraphs 85 | \emergencystretch 3em 86 | 87 | % Graphics directories 88 | \graphicspath{{../images/}{images/}} 89 | 90 | \newcommand{\begincols}{% 91 | \ifboolexpr{bool{reverse}}{% 92 | \begin{paracol}{2} 93 | \switchcolumn[1] 94 | }{% 95 | \begin{paracol}{2} 96 | } 97 | } 98 | 99 | \newcommand{\switchcols}{% 100 | \ifboolexpr{bool{reverse}}{% 101 | \switchcolumn[0] 102 | }{% 103 | \switchcolumn[1] 104 | } 105 | } 106 | 107 | \newcommand{\fincols}{\end{paracol}} 108 | 109 | %---------------------------------------------------------------------------------------- 110 | % COMMANDS 111 | %---------------------------------------------------------------------------------------- 112 | 113 | % Custom commands for CV 114 | \newcommand{\jobtitle}[1]{\renewcommand{\jobtitle}{#1}} 115 | \newcommand{\name}[1]{\renewcommand{\name}{#1}} 116 | \newcommand{\aboutdesc}[1]{\renewcommand{\aboutdesc}{#1}} 117 | \newcommand{\location}[1]{\renewcommand{\location}{#1}} 118 | \newcommand{\phone}[1]{\renewcommand{\phone}{#1}} 119 | \newcommand{\mail}[1]{\renewcommand{\mail}{#1}} 120 | \newcommand{\drivinglicenses}[1]{\renewcommand{\drivinglicenses}{#1}} 121 | \newcommand{\github}[1]{\renewcommand{\github}{#1}} 122 | \newcommand{\linkedin}[1]{\renewcommand{\linkedin}{#1}} 123 | \newcommand{\dateofbirth}[1]{\renewcommand{\dateofbirth}{#1}} 124 | \newcommand{\profilepic}[1]{\renewcommand{\profilepic}{#1}} 125 | \newcommand{\makeabout}[1]{\ifthenelse{\equal{\aboutdesc}{}}{}{% 126 | \subsection{#1} 127 | 128 | \aboutdesc}} 129 | \newcommand{\makedob}[1]{\ifthenelse{\equal{\dateofbirth}{}}{}{% 130 | \ifboolexpr{bool {altcont}}{}{% 131 | \subsection{#1} 132 | 133 | \dateofbirth}}} 134 | \newcommand{\makelicense}[1]{\ifthenelse{\equal{\drivinglicenses}{}}{}{% 135 | \subsection{#1} 136 | 137 | \drivinglicenses}} 138 | \newcommand{\langcircles}{\ifboolexpr{bool {langempty}}{}{\langskills}} 139 | \newcommand{\sitemtit}{\color{bodytext}\sffamily\MakeUppercase} 140 | \newcommand{\sitemsub}{\color{bodytext}\normalfont\itshape} 141 | 142 | % Icons 143 | \newcommand{\phoneicon}{\small{\faPhone*}} 144 | \newcommand{\locicon}{\faMapMarker*} 145 | \newcommand{\mailicon}{\faEnvelope} 146 | \newcommand{\githubicon}{\faGithub} 147 | \newcommand{\linkedinicon}{\faLinkedin} 148 | \newcommand{\calendaricon}{\faCalendar*} 149 | 150 | % Table column types 151 | \newcolumntype{Y}[1]{>{\centering\arraybackslash}m{#1}} 152 | \newcolumntype{L}[1]{>{\let\newline\\\arraybackslash\hspace{0pt}}p{#1}} 153 | \newcolumntype{C}{>{\centering\arraybackslash}X} 154 | 155 | % CEFR description 156 | \newcommand{\cefrdesc}{ 157 | \renewcommand{\arraystretch}{1}{\footnotesize{% 158 | \begin{tabular*}{\textwidth}{@{}p{\widthof{* }}@{}L{9cm}} 159 | * & A1/A2: Basic, B1/B2: Independent, C1/C2: Proficient \\ 160 | & \href{https://europass.cedefop.europa.eu/resources/european-language-levels-cefr}{Common European Framework of Reference for Languages} \\ 161 | \end{tabular*}% 162 | }} 163 | } 164 | 165 | % Language environments 166 | \newenvironment{langs}{% 167 | \renewcommand{\arraystretch}{1.4} 168 | \begin{tabular*}{\textwidth}{@{}L{4cm}L{4cm}L{1cm}} 169 | }{% 170 | \end{tabular*} 171 | } 172 | 173 | \newcommand{\langsitem}[2]{% 174 | \sitemtit{#1} & {#2} & \\ 175 | } 176 | 177 | \newcommand{\langsitemmulti}[4]{% 178 | \sitemtit{\multirow{3}{*}{#1}} & Understanding & {#2} \\ 179 | & Speaking & {#3} \\ 180 | & Writing & {#4} \\ 181 | } 182 | 183 | % Contact table 184 | \newcommand{\makecontact}[1]{% 185 | \ifboolexpr{bool {altcont}}{}{% 186 | \subsection{#1} 187 | 188 | \renewcommand{\arraystretch}{1.2} 189 | \begin{tabular}[t]{@{}Y{.1\columnwidth} @{\hskip 0.05\columnwidth}p{0.85\columnwidth}} 190 | \ifthenelse{\equal{\location}{}}{}{\locicon & \location \\ } 191 | \ifthenelse{\equal{\phone}{}}{}{\phoneicon & \phone \\ } 192 | \ifthenelse{\equal{\mail}{}}{}{\mailicon & \href{mailto:\mail}{\mail} } 193 | \ifthenelse{\equal{\linkedin}{}}{}{\\ \linkedinicon & \linkedin } 194 | \ifthenelse{\equal{\github}{}}{}{\\ \githubicon & \github \\ } 195 | \end{tabular} 196 | } 197 | } 198 | 199 | % Environment for listing out work experience and education 200 | \newenvironment{cvitem}[4]{% 201 | {\color{bodytext}{\ifthenelse{\isempty{#1}}{}{\sitemtit{#1,}}} \sitemtit{#2}}\\ 202 | {\sitemsub{#3 | #4}}\par 203 | {} 204 | } 205 | 206 | % Environment for listing out projects 207 | \newenvironment{projitem}[2]{% 208 | {\color{bodytext}{\ifthenelse{\isempty{#2}}{\sitemtit{#1}}{\sitemtit{#1 | #2}}}}\par 209 | {} 210 | } 211 | 212 | % Bullet style and spacing 213 | \setlist[itemize,1]{label={\color{bulletcolor}$\bullet$},parsep=6pt,labelindent=12pt} 214 | \setlist[itemize,2]{label={\color{bulletcolor}$\bullet$},parsep=6pt,labelindent=12pt} 215 | \setlist[itemize,3]{label={\color{bulletcolor}$\bullet$},parsep=6pt,labelindent=12pt} 216 | 217 | % Command for drawing professional and personal skills 218 | \newcommand\skillsbars[2]{% 219 | \ifboolexpr{bool {proempty} or bool {perempty}}{}{% 220 | \begin{minipage}[t]{.45\columnwidth} 221 | \section{#1} 222 | \proskills 223 | \end{minipage}% 224 | \hspace{.1\columnwidth}\begin{minipage}[t]{.45\columnwidth} 225 | \section{#2} 226 | \perskills 227 | \end{minipage} 228 | } 229 | } 230 | 231 | % Links 232 | \RequirePackage[bookmarks=false, colorlinks]{hyperref} 233 | \hypersetup{linkcolor=linkcolor, urlcolor=linkcolor} 234 | \makeatletter 235 | \def\Hy@href#{% 236 | \addfontfeatures{Color=linkcolor}\hyper@normalise\href@ 237 | } 238 | \makeatother 239 | --------------------------------------------------------------------------------