Here some of my major steps I took to fully leverage pagedown resume template.
Updating the CSS
With limited CSS experience, this step took the longest as I explored CSS syntax and the resulting output. I’ll ignore the actual CSS code and the changes I made, but the process of adding a custom CSS file was simple. First, create a .css file with the changes you want to make. After that, add a few lines of code to the YAML header of the markdown template (seen below).
output: pagedown::html_resume: css: ['css/custom_resume.css', 'css/styles_html.css', 'resume']
Note that with this setup, the base CSS template is still used but is overwritten by my custom CSS files. I also created a css folder to house the files, which appeared to be a best practice.
Creating an Excel file for data
Rather than hard coding my work and education experience in the Rmarkdowdn document, I liked the approach of creating a seperate excel file with all the neccesary data for my resume. This way it is easier to update my experience and in theory I could use that file to populate different resume versions, websites, etc..
Producing multiple versions
I wanted to create two different versions of my resume, one with color and a plain version for easier printing. That said, I did not want to maintain to seperate RMarkdown documents since that would require me to update TWO documents to ensure they were both always up to date. While this wouldn’t be an overwhelming burden, I also suspected it would lead to two versions with minor differences.
Using the render function from the rmarkdown package, I was able to easily update both versions at the same time. With this function, you can take an rmarkdown file and control some of the ouput settings. For example, I was able to control the output file name, the css settings, and any indiviudal parameter settings used in the YAML settings.
rmarkdown::render(input = "resume.Rmd", output_file = "index.html", output_options = list( css = c('css/custom_resume.css', 'css/styles_html.css', 'resume'), self_contained = FALSE ), params = list( doctype = "HTML" ) ) rmarkdown::render(input = "resume.Rmd", output_file = "mleary_resume.html", output_options = list( css = c('css/custom_resume.css', 'css/styles_pdf.css', 'resume') ), params = list( doctype = "PDF" ) )
This was really helpful to learn for future projects. Saving the output as a different name is something that could helpful in other circumstances. For routine reports that might be ran periodically, it would be helpful to use this function to save the output with the current date. Another use case would be to create template format and than create multiple outputs for a list of items using the purrr pacakge.