Home

Awesome

Markdown Resume Generator Build Statusnodesource/node

Convert markdown to HTML and PDF resumes

Turn a simple Markdown document into an elegant resume with both a perfect pdf printable format, and a responsive css3 html5 file. You can view a sample at the blog post for the project, or look in examples/output to see sample PDFs.

Features

Installation

Docker

Run those commands in the directory where you put your markdown resume.

Oneshot command

This is best suited for use in scripts or in CI environments:

docker run -v ${PWD}:/resume there4/markdown-resume md2resume [options] command [arguments]

Interactive console

This allows you to enter an interactive console where you can easily experiment and run different commands:

docker run -it -v ${PWD}:/resume there4/markdown-resume

Local

  1. Clone the repo git clone git@github.com:there4/markdown-resume.git or Download ZIP

  2. PHP 7 and composer are installed and on your PATH

  3. composer install inside of the project directory to install dependencies

  4. For generating PDF files, you need to install wkhtmltopdf

    • OSX: brew cask install wkhtmltopdf via Homebrew Cask
    • Debian: sudo apt install php7.0-mbstring wkhtmltopdf
    • Fedora sudo dnf install php-mbstring wkhtmltopdf

Usage

The two most important commands are the following two. Run them inside the cloned directory

./bin/md2resume html examples/source/sample.md examples/output/
./bin/md2resume pdf examples/source/sample.md examples/output/

Help

Markdown Resume Generator version 2.3.0 by Craig Davis

Usage:
  [options] command [arguments]

Options:
  --help           -h Display this help message.
  --quiet          -q Do not output any message.
  --verbose        -v|vv|vvv Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
  --version        -V Display this application version.
  --ansi              Force ANSI output.
  --no-ansi           Disable ANSI output.
  --no-interaction -n Do not ask any interactive question.

Available commands:
  help        Displays help for a command
  html        Generate an HTML resume from a markdown file
  list        Lists commands
  pdf         Generate a PDF from a markdown file
  stats       Generate a word frequency analysis of your resume
  templates   List available templates
  version     Show current version information

Examples

Choose a template with the -t option.

./bin/md2resume html --template blockish examples/source/sample.md examples/output/

If you want to edit your markdown resume in your editor while watching it update in your browser, run this command:

watch ./bin/md2resume html --refresh yes --template modern examples/source/sample.md examples/output/

This makes the build script run periodically, and html document will refresh every two seconds via a meta tag. Open the ./examples/ouput/sample.html file in your browser, and then just save your markdown document when you want to see a fresh preview.

Authoring Your Resume

Markdown is limited to basic html markup. Follow the examples/source/sample.md file as a guideline. This file includes various headers and several nested elements. This allows us to construct a semantic HTML document for the resume, and then use CSS rules to display a nicely formatted resume. Note that because we have very few ways to nest or identify elements that many of the css rules are based on descendant and adjacent selectors.

Feature Development

In order to add new commands, you'll need to first install the dependencies via composer install

After that, you can run the md2resume_dev.php file from the command line.

Building a Release

  1. Tag the repo with the new build number.
  2. Run composer build.
  3. Push both the tag and the code.

Acknowledgments

The initial inspiration is from the Sample Resume Template. However, no HTML from that project has been used in this. General layout has been reused, and media queries have been added. It's a nice template, and if you are a more comfortable with html than markdown, you should use it.

Changelog