-
Notifications
You must be signed in to change notification settings - Fork 1
/
my_cv.cls
126 lines (106 loc) · 3.04 KB
/
my_cv.cls
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{my_cv}[2021/09/07 My CV class]
\LoadClass[a4paper]{article}
\RequirePackage{fontawesome} % fonts
\RequirePackage{titlesec} % for editing sections
\RequirePackage{xcolor}
\RequirePackage[default]{raleway}
\RequirePackage{relsize}
\RequirePackage{ifthen}
\RequirePackage[margin=1cm,footskip=0.25in]{geometry}
\RequirePackage{multicol}
\RequirePackage[skins]{tcolorbox}
\RequirePackage{listofitems}
\RequirePackage{enumitem}
\RequirePackage{hyperref}
%% Page Settings
\setlength\columnsep{1cm}
\pagestyle{empty}
\setlist[itemize]{leftmargin=*}
\setlist{nolistsep}
%% Define Custom Colors
\definecolor{cvblue}{rgb}{0.32, 0.68, 0.89}
\definecolor{keywordcolor}{rgb}{0.80, 0.90, 1.0}
%% Set Separation Character for comma-separated values that are to be parsed separately as a list
\setsepchar{,}
%%% Edit Section Format
% Circled Icons
\newcommand*{\circled}[1]{
\tikz[baseline=(char.base)]{
\node[shape=circle,fill=black,inner sep=1.5pt,minimum size=23pt] (char) {\textcolor{white}{#1}};
}
}
% Tech Stack boxes
\newcommand*{\keyword}[1]{
\tikz[baseline=(char.base)]
{
\node[rectangle, rounded corners, fill=keywordcolor] (char) {\textcolor{black}{#1}};
}
}
% Different Section Styles
\titleformat{\section}
{\ralewayextra\bfseries\raggedright\color{cvblue}}
{}{0em} % prefix to all sections
{\hspace{-0.8em}} % code before the heading
\titleformat{\subsection}
{\large\bfseries}
{}{-0.8em} % prefix to all sections
{} % code before the heading
\titlespacing*{\subsection}{0pt}{0.7\baselineskip}{0.4\baselineskip}
\titlespacing*{\section}{0pt}{1\baselineskip}{0.4\baselineskip}
% section with symbol besides
\let\oldsection\section
\renewcommand*{\section}[2]
{%
\oldsection[#2]{\circled{#1} {\larger[2] #2}}
}
\newcommand*{\work}[4]
{%
\subsection{#1} %
\ifthenelse{\equal{#2}{}}
{}
{
\textbf{#2}\\
} %
#3\\ %
\ifthenelse{{\equal{#4}{}}}
{}
{
\readlist\keywordlist{#4}
{
\foreachitem\word\in\keywordlist{\keyword{\word}}
}
}
}
\newcommand*{\school}[7]
{%
\subsection{#1, #2 - #3}
#4 - \textbf{GPA: } #5\\
\textbf{{Thesis}} \ifthenelse{\equal{#7}{}}
{#6}
{\href{#7}{#6}}
}
\newcommand*{\publication}[5]
{%
[#1] \textbf{\href{#2}{#3}}\\
#4\\
\emph{Main contributions:} #5
}
\newcommand*{\titletext}[7]
{%
\begin{multicols}{2}
\hspace{-15pt}{\ralewayextra\bfseries\fontsize{20}{20}\selectfont #1}
{\ralewayextra\bfseries\fontsize{20}{20}\selectfont #2}\\
\href{mailto:[email protected]}{#3}\\
#4\\
\columnbreak
\begin{flushright}
\vspace*{-12pt}
{\ralewayextra Github} \textbf{\href{https://www.github.com/#5}{#5}}\\
{\ralewayextra LinkedIn} \textbf{\href{https://www.linkedin.com/in/#6}{#6}}\\
\ifthenelse{\equal{#7}{}}{}{{\ralewayextra Website} \textbf{\href{https://#7}{#7}}}
\end{flushright}
\end{multicols}
\vspace{-1cm}
}
\renewcommand{\baselinestretch}{1.15}