Put your resume.pdf on a website that updates automatically

Richard Kim
4 min readNov 9, 2015

Requirements: basic git knowledge, Github account

Goal: own a web page with a pdf of your resume like this. When you update your resume, the web page reflects those changes automatically.

1) Have a dedicated folder on your computer with your updated resume

You just need a single folder where you know that <file_name>.pdf will be your most recent resume. Here’s my setup as an example:

a) Editable resume document. b) my current resume.pdf

When I edit my resume (a), I export to pdf and replace my old resume.pdf (b) in the /current folder. You are only concerned with /current. As long as you have a folder where you know an updated resume with the same name will be, you’re good.

(So, if your file’s name is “resume.pdf”, make sure “resume.pdf” is always the most updated one, not “resume1.pdf” or “resumeV1.pdf”.)

For this guide, I will refer to this folder as “/current

2) Create a public Github repository for your /current folder.

Here’s a tutorial provided by Github.

Your repository should look something like this

3) Get the pdf’s raw link from your repository

(get to this page by clicking the file name in the repository)

4) Add an HTML file to your /current folder with the following code.

On line 7, replace “<YOUR PDF LINK HERE>” with your copied link. Your /current folder should look like this:

Double click on index.html to make sure your pdf is showing up in the browser.

5) Push the updates to git

example: (first, cd to /current)

6) Create a gh-page for your repository

In your terminal, cd to /current

This builds a Github.io page for your project. In a few minutes your pdf should be available at http(s)://<username>.github.io/<projectname> for example, http://cwrichardkim.github.io/Resume

7a) Manually updating your pdf

Since the index.html file is referencing the pdf named <filename>.pdf in your master branch, whenever you push an updated resume with the same name to master, the GitHub page will update itself.

7b) Script it (mac)

Want to automate this a bit? Let’s write a script called ‘update.command’ that executes all the git commands to push the new pdf whenever you double-click it. Create a new script in the /current folder called “update.command” with the following code (replace the first line with your path):

Now in the terminal, cd to your /current file and type in `chmod +x update.command`. This will allow us to run the script by double-clicking it. This should work for most of you now (if it doesn’t, right click on update.command and go to “get info” -> “Open with:” -> [your terminal app]). Now try double clicking it.

If you want to take it one step further, use fswatch to run the script whenever resume.pdf changes. I decided I liked the extra control in knowing when my resume would be updated, so I disabled fswatch.

8) (Extra) Setting the page up as a subdomain

eg: resume.<yourdomain>.com

Note: My domain lives on Namecheap, but there should be a similar process for all registrars

  1. Create a CNAME file to your repository with the text “resume.<yourdomain>.com” and make sure this is on the gh-pages branch
  2. “Dashboard” -> “manage” on the domain you want -> “Advanced DNS”
  3. Add this to your list of Host Records:

192.30.252.153 and 192.30.252.154 are the IP addresses Github wants you to use according to their help page. After about 30 minutes, you should be good to go!

Thanks! Hope you enjoyed the article. Come say hi!

--

--