Maybe some of you know JSON Resume:
The open source initiative to create a JSON-based standard for resumes.
I initially included everything in a theme that I’ve been developing the past couple of months but decided to move the functionality into a separate module to make it reusable.
Demo
You can find a demo at: CV
The theme uses this module. I will showcase the theme here, too, as soon as it’s ready, and publish it to the official Hugo theme showcase.
Data Structure
The module reads JSON Resume data from Hugo’s data/ directory:
data/
├─ json_resume/
├─ de.json
├─ en.json
Each file must adhere to the JSON Resume schema specification.
Partials and Shortcodes
Use the json-resume shortcode in markdown files:
---
title: "CV"
draft: false
---
## Experience
{{< json-resume "work" >}}
## Education
{{< json-resume "education" >}}
Or use the partials in your layout files:
<div class="sidebar">
<aside class="bio">{{ partial "json-resume/basics.html" . }}</aside>
</div>
Styling
You can style the existing templates by using the pre-defined classes. There are generic classes prefixed with jr__ like jr__item or jr__date-range that apply to any template.
Classes specific to resume sections are prefixed with jr-<section>__<section-field>, like jr-work__description or jr-basics__name.
You can find more info in the GitHub README.
Any feedback is appreciated. It’s my first Hugo module.