Resume Stylist
Note: Currently in very early development.
Small framework for making CV/resume themes using Liquid and Sass.
Installation
$ gem install resume-stylistAlso, since this uses PDFKit, you'll need to make sure you have wkhtmltopdf installed. On Arch it's as simple as running sudo pacman -S wkhtmltopdf, but consult their documentation for recommendations regarding other platforms: https://github.com/pdfkit/pdfkit#wkhtmltopdf
Features
Here are some cool features:
- Uses Liquid as the templating language
- Support for inline Sass and SCSS by using
<style type="text/sass">and<style type="text/scss"> - Support for multiple Resume formats (JSON and XML currently), but you can BYOF (Bring Your Own Format)!
- Export to PDF
Usage
Tool usage
Create a new theme and a JSON resume template:
$ resume-stylist --new-theme fancy.html.liquid --new-resume john_doe.jsonBuild your theme as a PDF:
$ resume-stylist build john_doe.json john_doe.pdf$ resume-stylist build john_doe -I json john_doe.pdfRun resume-stylist --help for more options!
Library usage
Registering a custom resume format
module MyResumeFormat
def self.handles?(resume_format)
# Handle
resume_format.to_s =~ /(myformat|myf)/i
end
def load!(input)
# input is the resume data
data = My::Parser.parse(input)
@data = data.to_h
end
end
ResumeStylist::Resume.register_handler MyResumeFormatNOTE: The theme expects @data to be a Hash with String keys.
Creating a resume (HTML) programmatically:
resume = ResumeStylist::Resume.new(resume_source, :myformat)
theme = ResumeStylist::Theme.new(theme_source)
html = theme.render(resume.data)Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/omninonsense/resume-stylist. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
License
The gem is available as open source under the terms of the MIT License.