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

@resuml/cli

v1.1.2

Published

Generate JSON resumes from YAML with theme support

Readme

resuml

npm version License: ISC

Generate JSON resumes from YAML with theme support.

resuml is a modern CLI tool for managing your resume in YAML format. It enables you to maintain your resume data as modular YAML files, validate them against the JSON Resume schema, and render them to various output formats.

Features

  • YAML-First: Author your resume in YAML for better readability and maintainability
  • Modular Data: Split your resume into multiple files for easier maintenance
  • Standard Compatibility: Compatible with the JSON Resume schema
  • Schema Validation: Validate your resume data against the JSON Resume schema
  • Multiple Output Formats: Convert your resume to JSON and render to HTML
  • Theme Support: Use existing JSON Resume themes or custom resuml themes
  • Development Server: Preview changes with hot-reloading

Installation

# Install globally
npm install -g @resuml/cli

# Or use with npx
npx @resuml/cli --help

# After installation, use the simple command:
resuml --help

Quick Start

  1. Install a theme and create a resume directory:
# Install the recommended React theme
npm install -g jsonresume-theme-react

# Create your resume directory
mkdir my-resume
cd my-resume
  1. Create your resume files (you can split into multiple files or use just one):
# basics.yaml
basics:
  name: 'John Doe'
  label: 'Software Engineer'
  email: '[email protected]'
  phone: '+1-555-123-4567'
  website: 'https://johndoe.dev'
  summary: 'Experienced software engineer with a passion for creating innovative solutions.'
  location:
    city: 'San Francisco'
    region: 'CA'
    countryCode: 'US'

# work.yaml
work:
  - company: 'Tech Corp'
    position: 'Senior Software Engineer'
    website: 'https://techcorp.com'
    startDate: '2020-01-01'
    endDate: '2023-12-31'
    summary: 'Led development of core platform features'
    highlights:
      - 'Improved system performance by 40%'
      - 'Mentored 5 junior developers'

# education.yaml
education:
  - institution: 'University of Technology'
    area: 'Computer Science'
    studyType: 'Bachelor of Science'
    startDate: '2016-09-01'
    endDate: '2020-05-31'
    gpa: '3.8'

# skills.yaml
skills:
  - name: 'Programming Languages'
    keywords:
      - 'JavaScript'
      - 'TypeScript'
      - 'Python'
      - 'Go'
  - name: 'Frameworks'
    keywords:
      - 'React'
      - 'Node.js'
      - 'Express'
  1. Validate and render your resume:
# Validate your resume files
resuml validate -r .

# Convert to JSON Resume format
resuml tojson -r . -o resume.json

# Render to HTML with a theme
resuml render -r . -t jsonresume-theme-react -o resume.html

# Start development server for live preview
resuml dev -r . -t jsonresume-theme-react

Usage

Basic Commands

# Validate your resume YAML files
resuml validate -r path/to/resume/dir

# Convert YAML to JSON Resume format
resuml tojson -r path/to/resume-dir -o resume.json

# Render resume to HTML with a theme
resuml render -r path/to/resume/dir -t jsonresume-theme-react -o resume.html

# Start development server with hot-reload
resuml dev -r path/to/resume-dir -t jsonresume-theme-react

Command Options

validate

Validates your resume YAML files against the JSON Resume schema.

resuml validate -r <resume-path>
  • -r, --resume <path>: Path to resume files (directory or glob pattern)

tojson

Converts YAML resume files to JSON Resume format.

resuml tojson -r <resume-path> -o <output-file>
  • -r, --resume <path>: Path to resume files (directory or glob pattern)
  • -o, --output <file>: Output JSON file path

render

Renders resume to HTML using a JSON Resume theme.

resuml render -r <resume-path> -t <theme> -o <output-file>
  • -r, --resume <path>: Path to resume files (directory or glob pattern)
  • -t, --theme <theme>: Theme name (e.g., 'jsonresume-theme-react')
  • -o, --output <file>: Output HTML file path

dev

Starts a development server with hot-reloading for live preview.

resuml dev -r <resume-path> -t <theme>
  • -r, --resume <path>: Path to resume files (directory or glob pattern)
  • -t, --theme <theme>: Theme name (e.g., 'jsonresume-theme-react')

File Organization

You can organize your resume data in multiple ways:

Single File

# resume.yaml
basics:
  name: 'John Doe'
  # ... rest of basics
work:
  - company: 'Tech Corp'
    # ... work details
education:
  - institution: 'University'
    # ... education details

Multiple Files (Recommended)

resume/
├── basics.yaml      # Personal information and contact details
├── work.yaml        # Work experience
├── education.yaml   # Educational background
├── skills.yaml      # Skills and competencies
├── projects.yaml    # Projects you've worked on
├── awards.yaml      # Awards and achievements
├── volunteer.yaml   # Volunteer experience
├── publications.yaml # Publications and papers
└── references.yaml  # Professional references

Using Glob Patterns

# Process all YAML files in subdirectories
resuml validate -r "resume/**/*.yaml"

# Process specific file patterns
resuml validate -r "resume/{basics,work,education}.yaml"

JSON Resume Schema

resuml follows the JSON Resume schema specification. The main sections include:

  • basics: Personal information, contact details, and summary
  • work: Work experience and employment history
  • volunteer: Volunteer work and community involvement
  • education: Educational background and qualifications
  • awards: Awards, honors, and achievements
  • publications: Publications, papers, and articles
  • skills: Technical and professional skills
  • languages: Language proficiencies
  • interests: Personal interests and hobbies
  • references: Professional references
  • projects: Personal or professional projects

For detailed schema documentation, visit jsonresume.org/schema.

Themes

resuml supports all JSON Resume themes. We recommend these high-quality themes:

Featured Themes

  • jsonresume-theme-react - Modern React-based theme with excellent performance and clean design
  • jsonresume-theme-stackoverflow - Clean, professional theme inspired by Stack Overflow's design

Other Popular Themes

  • jsonresume-theme-elegant - Modern, elegant design
  • jsonresume-theme-even - Simple, balanced layout
  • jsonresume-theme-flat - Flat design theme
  • jsonresume-theme-kendall - Modern, colorful theme

To use a theme, install it via npm and reference it by name:

# Install and use the React theme (recommended)
npm install -g jsonresume-theme-react
resuml render -r resume/ -t jsonresume-theme-react -o resume.html

# Or try the Stack Overflow theme
npm install -g jsonresume-theme-stackoverflow
resuml render -r resume/ -t jsonresume-theme-stackoverflow -o resume.html

Examples

Check out the examples directory in the repository for sample resume files and usage patterns.

Requirements

  • Node.js 20.0.0 or higher

Contributing

Found a bug or want to contribute? Visit the GitHub repository to:

  • Report issues
  • Submit feature requests
  • Contribute code improvements

License

ISC License - see the LICENSE file for details.

Support