Write your resume in Markdown, style it with CSS, output to HTML and PDF.
- Python ≥ 3.6
- python-venv
- python-markdown
- weasyprint
-
Clone this repository
-
Create a venv with necessary dependencies
python -m venv .venvsource .venv/bin/activatepip install -r requirements.txt
-
Edit resume.md (the placeholder text is taken with thanks from the JSON Resume Project)
-
Run
python3 resume.pyto build resume.html and resume.pdf.- Use
--no-htmlor--no-pdfto disable HTML or PDF output.
- Use
Edit resume.css to change the appearance of your resume. The default style is extremely generic, which is perhaps what you want in a resume, but CSS gives you a lot of flexibility. See, e.g. The Tech Resume Inside-Out for good advice about what a resume should look like (and what it should say).
Change the appearance of the PDF version (without affecting the HTML version) by
adding rules under the @media print CSS selector.
Change the margins and paper size of the PDF version by editing the @page CSS
rule.
python-markdown is by default a very basic
markdown compiler, but it has a number of optional extensions that you may want
to enable (by adding to the list of extensions
here).
attr_list
in particular may by useful if you are editing the CSS.
abbreviations
extension is already enabled.
