Skip to content

metaory/jsonresume-service

 
 

Repository files navigation

JSONResume as a Service
What ▪️Why ▪️How ▪️Usage


resume service example

What

Serverless service to generate dynamic resumes from remote GitHub gists,

compliant with;

JSONResume

What is a JSONResume?

A community driven open source initiative to create a JSON based standard for resumes

Why JSON?

It's lightweight, easy to use and it's perfect to build tools for! JSON Schema is mature enough for writing usable semantics.

read more

Checkout Basic example


Along with headless puppeteer integration for exporting PDF files.


Why

Have you spent countless hours making a resume only to end up having to redo it when you want to change the format? what json resume does is allow for you to input your data in one place and then dynamically generate your resume with different templates


How

Reads resume.json from one of the following methods:


Usage

Public Gists

<HOST>/user/<username>

Important

the <username> is GitHub username

Caution

the user MUST have a public gist with resume.json file


Secret Gists

<HOST>/gist/<gist_id>

Important

the <gist_id> is the secret gist id

Caution

the user MUST have a compliant JSON file in given gist

Tip

the first JSON file in that gist will be attempted

the file can be named anything

eg; my-private.json


Development

You'll want to fork this repository and deploy your own resume generator service.

  1. Fork this repository

  2. Clone your fork

git clone https://github.com/<YOUR_USERNAME>/json-resume-service.git
# or
git YOUR_USERNAME>/json-resume-service.git
  1. Navigate to cloned repository
cd json-resume-service
  1. Install local dependencies
npm i
# or
pnpm install
  1. Run locally
pnpm dev
# or
npm run dev
  1. Visit localhost:3000
  • Public route localhost:3000/user/<username>
  • Secret route localhost:3000/gist/<gist_id>

Replace <username> or <gist_id> accordingly

  1. (OPTIONALLY) Deploy to the cloud by running going to Vercel and making an account if you don't have one or you another hosting service of your choice.

Basic example

A basic example from jsonresume.org/schema

basic resume.json
{
  "basics": {
    "name": "John Doe",
    "label": "Programmer",
    "image": "",
    "email": "[email protected]",
    "phone": "(912) 555-4321",
    "url": "https://johndoe.com",
    "summary": "A summary of John Doe…",
    "location": {
      "address": "2712 Broadway St",
      "postalCode": "CA 94115",
      "city": "San Francisco",
      "countryCode": "US",
      "region": "California"
    },
    "profiles": [{
      "network": "Twitter",
      "username": "john",
      "url": "https://twitter.com/john"
    }]
  },
  "work": [{
    "name": "Company",
    "position": "President",
    "url": "https://company.com",
    "startDate": "2013-01-01",
    "endDate": "2014-01-01",
    "summary": "Description…",
    "highlights": [
      "Started the company"
    ]
  }],
  "volunteer": [{
    "organization": "Organization",
    "position": "Volunteer",
    "url": "https://organization.com/",
    "startDate": "2012-01-01",
    "endDate": "2013-01-01",
    "summary": "Description…",
    "highlights": [
      "Awarded 'Volunteer of the Month'"
    ]
  }],
  "education": [{
    "institution": "University",
    "url": "https://institution.com/",
    "area": "Software Development",
    "studyType": "Bachelor",
    "startDate": "2011-01-01",
    "endDate": "2013-01-01",
    "score": "4.0",
    "courses": [
      "DB1101 - Basic SQL"
    ]
  }],
  "awards": [{
    "title": "Award",
    "date": "2014-11-01",
    "awarder": "Company",
    "summary": "There is no spoon."
  }],
  "certificates": [{
    "name": "Certificate",
    "date": "2021-11-07",
    "issuer": "Company",
    "url": "https://certificate.com"
  }],
  "publications": [{
    "name": "Publication",
    "publisher": "Company",
    "releaseDate": "2014-10-01",
    "url": "https://publication.com",
    "summary": "Description…"
  }],
  "skills": [{
    "name": "Web Development",
    "level": "Master",
    "keywords": [
      "HTML",
      "CSS",
      "JavaScript"
    ]
  }],
  "languages": [{
    "language": "English",
    "fluency": "Native speaker"
  }],
  "interests": [{
    "name": "Wildlife",
    "keywords": [
      "Ferrets",
      "Unicorns"
    ]
  }],
  "references": [{
    "name": "Jane Doe",
    "reference": "Reference…"
  }],
  "projects": [{
    "name": "Project",
    "startDate": "2019-01-01",
    "endDate": "2021-01-01",
    "description": "Description...",
    "highlights": [
      "Won award at AIHacks 2016"
    ],
    "url": "https://project.com/"
  }]
}

Contributors


License

Copyright © 2021-present Drake Axelrod

MIT


About

JSON resumes as a Service - generate Resumes from the resume.json schema

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Languages

  • TypeScript 49.0%
  • SCSS 45.9%
  • JavaScript 5.1%