npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

jsonresume-theme-modern-plain

v1.1.5

Published

A clean, modern JSON Resume theme with a professional two-column layout, PT Sans typography, and optimized for single-page print output

Readme

JSON Resume Theme - Modern Plain

npm version npm downloads license

A clean, modern JSON Resume theme with a professional two-column layout. Perfect for developers, engineers, and technical professionals.

Features

  • Clean, modern design with PT Sans typography
  • Two-column layout (Experience on left, Skills/Education on right)
  • Print-optimized styles for single-page output
  • Company URLs with link icons displayed after company names
  • Social links with icons (Website, LinkedIn, GitHub) showing usernames
  • GPA display in education section
  • Blue accent colors (#4a89dc / #205bb5)
  • Optimized for Safari print-to-PDF
  • Support for all standard JSON Resume fields

Installation

Local Development

  1. Clone or download this repository
  2. Install dependencies:
npm install

Using with resume-cli or resumed

Install globally:

# Traditional tool
npm install -g resume-cli

# Modern alternative (Note: does not support local theme development with --theme .)
npm install -g @rbardini/resumed

Note: This theme works with both tools, but for local theme development (using --theme .), use resume-cli. The resumed package is a more modern alternative but handles local themes differently.

Usage

Command Line Scripts

This theme provides command-line scripts for generating HTML and PDF versions of your resume:

Generate HTML

# Using npm scripts with sample resume
npm run render:sample

# Or with custom input/output
npm run render -- --input=path/to/your-resume.json --output=output.html

Generate PDF with Puppeteer

# Using npm scripts with sample resume
npm run pdf:sample

# Or with custom input/output
npm run pdf -- --input=path/to/your-resume.json --output=output.pdf

Preview your resume

To preview your resume locally:

resume serve --theme . --resume your-resume.json

This will start a local server at http://localhost:4000.

Export to HTML

To export your resume to HTML:

resume export resume.html --theme . --resume your-resume.json

Export to PDF

Recommended method (Safari):

  1. Run resume serve --theme . --resume your-resume.json
  2. Open Safari and navigate to http://localhost:4000
  3. Press Cmd+P to open print dialog
  4. Uncheck "Headers and Footers" for best results
  5. Click the PDF dropdown in bottom-left → Save as PDF

This method provides the best single-page output optimized for this theme.

Alternative method (resume-cli):

resume export resume.pdf --theme . --resume your-resume.json

Using the included PDF script (with Puppeteer):

npm run pdf:sample
# or
npm run pdf -- --input=path/to/your-resume.json --output=your-resume.pdf

Note: The CLI method may produce a two-page PDF. For optimal results, use the Safari print method above or the Puppeteer-based PDF script.

Resume Schema

This theme follows the JSON Resume schema. Here's what sections are supported:

Required/Main Sections

  • basics - Name, label, email, phone, location, profiles, summary
  • work - Work experience with highlights
  • education - Educational background
  • skills - Technical skills grouped by category
  • languages - Language proficiencies

Optional Sections

  • projects - Side projects or portfolio items
  • certificates - Professional certifications
  • volunteer - Volunteer experience
  • awards - Awards and achievements
  • publications - Published works
  • references - Professional references

Customization

Colors

The theme uses a blue color scheme. To customize colors, edit style.css:

  • Primary blue: #4a89dc
  • Dark blue: #205bb5
  • Text color: #333
  • Light gray: #555

Fonts

The theme uses PT Sans for all text, loaded from Google Fonts. To change fonts, edit the Google Fonts link in resume.hbs and update the font-family in style.css.

Layout

The layout uses a 3:2 ratio for the left and right columns. To adjust, modify the flex values in style.css:

.left-column {
    flex: 3;  /* Adjust this */
}

.right-column {
    flex: 2;  /* Adjust this */
}

File Structure

jsonresume-theme-modern-plain/
├── index.js           # Theme rendering logic
├── resume.hbs         # Handlebars template
├── style.css          # CSS styles
├── package.json       # NPM package configuration
└── README.md          # This file

Development

To test changes to the theme:

  1. Make your changes to resume.hbs, style.css, or index.js
  2. Run resume serve --theme . --resume your-resume.json to preview
  3. Refresh the browser to see changes

Print Tips

  • For best single-page results, uncheck "Headers and Footers" in Safari print dialog
  • The theme is optimized for A4 page size with 8mm margins
  • Font size is set to 10pt for print with 1.2 line height
  • Page breaks are controlled to keep experience entries together
  • Print styles use !important declarations to ensure proper formatting when converting to PDF
  • Reduced spacing in print styles for more compact output that fits on one page

License

MIT

Release Process

This project uses automated releases via GitHub Actions. To create a new release:

  1. Update the version in package.json using npm version command:

    • For patch version: npm version patch
    • For minor version: npm version minor
    • For major version: npm version major
  2. Push the changes and the tag:

    git push origin master
    git push origin v[version-number]

Alternatively, create a GitHub release through the web interface, which will trigger the npm publish workflow automatically.

After setting up the automated release process:

  1. Create an npm access token at npmjs.com
  2. Add the token as a GitHub secret named NPM_TOKEN in your repository settings

Credits

Based on a professional CV template with modern design principles.