Skip to content

Commit

Permalink
Release v1.0 (#5)
Browse files Browse the repository at this point in the history
* Polycv Version 1.0

* first working version of class polycv
* Features:
  - CV first page environment with sidebar box
  - CV page environment for more pages
  - Cover letter environment
* Needs orcidicon.pdf as intermediate solution
* Example files included
* LPPL license
* Meta: Added build scripts
  • Loading branch information
polyluxus committed Jul 9, 2020
1 parent 9b479c3 commit 0d17e7d
Show file tree
Hide file tree
Showing 43 changed files with 4,578 additions and 1 deletion.
416 changes: 416 additions & 0 deletions LICENSE.txt

Large diffs are not rendered by default.

64 changes: 63 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,65 @@
# polycv - A latex class for writing curriculum vitaes
# polycv - A latex class for writing curriculum vitae

I previously used the package [koma-moderncvclassic](https://ctan.org/pkg/koma-moderncvclassic)
to prepare my CV, and I was actually quite satisfied with the look of it.
In a way this class borrows some design elements from it.
However, I noticed it was not using a lot of space,
which got especially problematic when inserting a picture.

I looked through various templates and classes online
([limecv](https://github.com/opieters/limecv),
[simple academic resume](https://github.com/latex-ninja/simple-academic-resume),
[Deedy Resume](https://github.com/deedy/Deedy-Resume),
[Fancy CV by Adrien Friggeri](https://www.sharelatex.com/templates/cv-or-resume/fancy-cv),
[the Overleaf CV Gallery](https://www.overleaf.com/gallery/tagged/cv),
TeX Stack Exchange [LaTeX template for resume/curriculum vitae](https://tex.stackexchange.com/q/80/33413),
... , there are possibly some I forgot),
but couldn't find anything that was exactly to my linking.
So I decided to write a class for myself, not just only for my CV,
but also for the training in writing such classes (or packages).

The main goal was to structure the information in a way that,
if condensed enough, it would fit on one page;
but additional pages could be added when the need arose,
e.g. a long publication list, or many stations along the way.

Additionally I liked the idea of having a cover letter template,
which resembles most of the elements of the CV.

I am now at a stage where I consider it functional,
and ready to use by other people than me.

Here is one example of what is possible so far.
You will surely notice some of the design elements from the list above.

<img src="examples/two-page-letter/main.page-1.png" alt-="CV" width="200"> <img src="examples/two-page-letter/main.page-2.png" alt-="CV (cont.)" width="200"> <img src="examples/two-page-letter/main.page-3.png" alt-="Cover Letter" width="200">

## Usage

For a detailed description, please refer to the documentation, which is located in
[`doc/latex/polycv.pdf`](./doc/latex/polycv.pdf), or can alternatively be build from
the source files.
Install the class file [`tex/latex/polycv.cls`](./tex/latex/polycv.cls) in a directory,
which is searched by latex, or alternatively, build it from the source files.
The [examples](./examples) directory contains a few template files.

If anything is unclear, needs improvement, is missing,
please submit an [issue](https://github.com/polyluxus/polycv/issues).
Thank you.

## Building the package

To compile the document class, simply run `pdflatex` on the `polycv.ins` source file in
[`source/latex`](./source/latex) and copy the resulting `polycv.cls` file to a
directory searched by latex.

To compile the documentation, run `pdflatex` on the `polycv.dtx` source file in the same
directory. To build the index and changes, run the following two lines:
```
makeindex -s gglo.ist -o polycv.gls polycv.glo
makeindex -s gind.ist -o polycv.ind polycv.idx
```
Run `pdflatex` on the source file, until no more warnings appear.

Both derived files are included for convenience in their respective directories.

Binary file added doc/latex/polycv.pdf
Binary file not shown.
5 changes: 5 additions & 0 deletions examples/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# The main.bib file will be generated automatically
main.bib
# The class file should be installed first
polycv.cls

Binary file added examples/letter-mwe/main.page-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added examples/letter-mwe/main.pdf
Binary file not shown.
19 changes: 19 additions & 0 deletions examples/letter-mwe/main.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
\documentclass[primary=black,14pt,a4paper]{polycv}
\usepackage{mwe} % for this example
\title{Curriculum Vitae}
\author{Example Author}
\signaturefile{example-image-16x9}

\begin{document}
\begin{polycvletter}
[Address line 1\\ Address line 2]
{Subject line}
{Company\\ Address line 1\\ Address line 2}
\opening{Dear Example,}

\blindtext[1-3]

\closing{Sincerely,}
\ps{\blindtext[1]}
\end{polycvletter}
\end{document}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added examples/letter-one-page-appendix/main.pdf
Binary file not shown.
156 changes: 156 additions & 0 deletions examples/letter-one-page-appendix/main.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
\documentclass[% draft,
xcolor=dvipsnames, primary=Sepia, biblatex, signcv, a4paper]{polycv}

\usepackage{mwe} % Only for this example
\errorcontextlines=20

% Fonts declaration
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{libertine}

% bibliography
\usepackage[backend=biber,%
style=numeric-comp, style=chem-angew, subentry=true, sorting=ydnt]{biblatex}
\begin{filecontents}{\jobname.bib}
@BOOK{example-book,
author = {Example Author},
title = {Example Book Title},
publisher = {Example Publisher},
year = {2019},
}

@ARTICLE{example-article,
author = {Example Author},
title = {Example Title},
journal = {J. Examples},
year = {2019},
volume = {0},
pages = {1227},
}

@Thesis{example-thesis,
author = {Example Author},
title = {Example Thesis Title},
school = {University of Examples},
year = {2019},
type = {PhD-Thesis},
address = {Example Town},
}

@CONFERENCE{example-talk,
author = {Example Author},
title = {Example Thesis Title},
booktitle = {Book of Abstracts, 1st Annual Example Meeting},
year = {2019},
}

\end{filecontents}
\addbibresource{\jobname.bib}

\usepackage[english]{babel}
\usepackage{csquotes}
\usepackage{multicol}

% Fill variables with some content
\title{Curriculum Vitae}
\author{Example Author}
\position{Title / Position}
\street{Street 123}
\location{Town, Country}
\email{me@mail.com}
\phone{+1 234 56 78 900}
\mobile{+1 234 56 78 999}
\orcid{0000-0001-0002-0003}
\github{ex-ample}
\signaturefile{example-image-16x9}

\begin{document}
\begin{polycvletter}[%
\insertaddress\\%
\insertmobile\\%
\insertemail]%
{Subject}%
{Company\\ Address}
\opening{Dear Example,}

\blindtext[1-3]

\closing{Sincerely,}
\ps{\blindtext[1]}
\end{polycvletter}
\begin{polycvfirstpage}
% Cite everything first. This works because the bibliography settings (above) sort chronologic.
\nocite{*}%
% Define what goes into the sidebar
\begin{polycvsidebar}

\includegraphics[width=1.0\linewidth]{example-image-1x1}\\[2ex]

\section{Personal Details}
% Universally usable line:
\cvitemline{\faStar}{01. 01. 1984,\newline Birthplace, Country}
\cvlineaddress
\cvlineemail
\cvlinephone
\cvlinemobile
\cvlineorcid
\cvlinegithub
\null

\section{Languages}
\cvlanguage{English (native)}{1}
\cvlanguage{Leetspeak (B2)}{0.7}

\section{Skills}
\cvskill{\LaTeX}{0.8}
\cvskill{Reading}{0.9}
\cvskill{Writing}{0.7}
\cvskill{Calculating}{0.3}
\cvskill{Gaming}{0.95}

\end{polycvsidebar}%
\section{Experience}
% \cventry{years}{degree/jobtitle}{institution/employer}{localization}{optional: grade/...}{optional: comment/job description}
\cventry{2018 - 2019}
{Writer}
{Example Publisher}
{Example Place}
{}
{First reading things, and then writing about those things.}

\cventry{2017 - 2018}
{Reader}
{Example Company}
{Example Place}
{}
{Reading things.}

\section{Education}
\cventry{2010 - 2017}
{Student}
{Example School}
{Example Place}
{Grade: excellent}
{Learning how to read and write.}

\section{Languages}
\cvlanguage{English (native)}{1}
\cvlanguage{Leetspeak (B2)}{0.7}

\section{Skills}
\begin{multicols}{2}
\cvskill{\LaTeX}{0.8}
\cvskill{Reading}{0.9}
\cvskill{Writing}{0.7}
\cvskill{Calculating}{0.3}
\cvskill{Gaming}{0.95}
\end{multicols}

\defbibheading{bibliography}[Publications and Talks]{\section{#1}}
\printbibliography
\end{polycvfirstpage}
\pdfappendix{example-image-a4}
\pdfappendix[angle=90]{example-image-a4-landscape}
\end{document}

Binary file added examples/letter-one-page/main.page-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added examples/letter-one-page/main.page-2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added examples/letter-one-page/main.pdf
Binary file not shown.
Loading

0 comments on commit 0d17e7d

Please sign in to comment.