json2yamlresume is a command-line tool to convert JSON Resume to YAMLResume format.
basics.location to top-level location objectbasics.profiles to top-level profiles arraybasics.label to headlinelocation.countryCode to countryeducation[].studyType to degreereferences[].reference to summaryhighlights arrays into summary fields as markdown unordered lists
for projects, volunteer, and work sectionsnpm install -g json2yamlresume
# or
yarn global add json2yamlresume
# or
pnpm add -g json2yamlresume
# or
bun add -g json2yamlresume
json2yamlresume input.json output.yaml
# or just call the command without the optional output path, in this case the
# output will be written to the same directory as the input file with the same
# name but with a .yml extension
json2yamlresume input.json
json2yamlresume --help
# or
json2yamlresume -h
json2yamlresume --version
# or
json2yamlresume -V
{
"basics": {
"name": "John Doe",
"label": "Software Engineer",
"email": "john@example.com",
"location": {
"city": "San Francisco",
"countryCode": "US"
},
"profiles": [
{
"network": "GitHub",
"username": "johndoe",
"url": "https://github.com/johndoe"
}
]
},
"work": [
{
"name": "Tech Corp",
"position": "Senior Developer",
"startDate": "2020-01",
"summary": "Led development of web applications.",
"highlights": [
"Increased performance by 40%",
"Mentored 5 junior developers"
]
}
],
"education": [
{
"institution": "University of California",
"area": "Computer Science",
"studyType": "Bachelor of Science",
"startDate": "2018"
}
]
}
---
content:
basics:
name: John Doe
headline: Software Engineer
email: john@example.com
education:
- institution: University of California
area: Computer Science
degree: Bachelor of Science
startDate: "2018"
location:
city: San Francisco
country: US
profiles:
- network: GitHub
username: johndoe
url: https://github.com/johndoe
work:
- name: Tech Corp
position: Senior Developer
startDate: 2020-01
summary: |-
- Increased performance by 40%
- Mentored 5 junior developers
basics.location → top-level locationbasics.profiles → top-level profilesbasics.label → basics.headlineeducation[].studyType → education[].degreeThe converter merges highlights arrays into summary fields as markdown
unordered lists for these sections:
work[]volunteer[]projects[]Example:
{
"summary": "Led development team.",
"highlights": ["Increased performance", "Mentored developers"]
}
Becomes:
summary: |-
Led development team.
- Increased performance
- Mentored developers
The converter supports all standard JSON Resume sections:
basics (with location/profiles extraction)work (with highlights merging)volunteer (with highlights merging)education (with studyType → degree mapping)awardscertificatespublicationsskillslanguagesinterestsreferencesprojects (with highlights merging)MIT License - see LICENSE for details.
Contributions are welcome! Please feel free to submit a Pull Request.
If you find this tool helpful, consider supporting the YAMLResume project: