resumed

repository·main·Indexed 19 days ago

https://github.com/rbardini/resumed

A lightweight, modern reimplementation of the JSON Resume resume-cli. It provides a CLI and a strongly-typed Node.js API to initialize, validate, render to HTML, and export JSON resume data to PDF using Puppeteer. The tool supports custom themes via the --theme flag or the .meta.theme field in the JSON resume file.

Tokens
4.1K
Snippets
24
Records
31
Agent score
67%

What's inside resumed

  1. How theme resolution works in Resumed

    main

    Unlike resume-cli, Resumed does not include a default theme. You must install a theme package manually. Resumed determines which theme to use via one of two methods:

    1. The --theme CLI option.
    2. The .meta.theme field within your JSON resume file.
  2. Use the Resumed CLI

    main

    Resumed provides a CLI for rendering, exporting, initializing, and validating resumes. Use the following command structure:

    resumed <command> [options]

    Available commands:

    • render: Render resume to HTML.
    • export: Export resume to PDF.
    • init: Create a sample resume file.
    • validate: Validate the resume against the JSON Resume schema.
    $ resumed --help
  3. Use a local theme with Resumed

    main

    To use Resumed with a custom local theme instead of a remote one, you can clone the local theme example repository. This setup allows you to define and manage your own theme files directly within your project structure.

    Follow these steps to set up and run the local theme example:

    1. Clone the example using degit.
    2. Install the necessary dependencies.
    3. Initialize the project (e.g., creating a default resume file).
    4. Start the development server to render the resume.
    npx degit rbardini/resumed/examples/with-local-theme
    npm install
    npm run init
    npm start
  4. Use the JSON Resume Even theme example

    main

    To see how to integrate Resumed with the Even JSON Resume theme, you can clone this specific example repository. This setup demonstrates the full workflow of initializing a resume, installing dependencies, and rendering the output using the theme.

    npx degit rbardini/resumed/examples/with-jsonresume-theme
    npm install
    npm run init
    npm start
  5. Install Resumed and a theme

    main

    To use Resumed, you must install the resumed package along with a JSON Resume theme of your choice (e.g., jsonresume-theme-even).

    npm install resumed jsonresume-theme-even # or your theme of choice
  6. Use the Resumed Node.js API

    main

    You can interact with Resumed programmatically using its Node.js API instead of the CLI. This allows you to integrate resume rendering, validation, and exporting directly into your own Node.js applications or build scripts.

    To explore a working implementation, you can clone the official Node.js API example repository.

    npx degit rbardini/resumed/examples/with-node-api
    npm install
    npm run init
    npm start
  7. Validate a resume with the `validate` command

    main

    The validate command checks your JSON resume file to ensure it adheres to the expected schema.

    Usage: resumed validate [filename] [options]

    # Example: Validate resume.json
    resumed validate resume.json
  8. Render a resume with the `render` command

    main

    The render command converts a JSON resume file into an HTML file. By default, it is the primary command used for rendering.

    Usage: resumed render [filename] [options]

    Options:

    • -o, --output: Specify the output filename.
    • -t, --theme: Specify the theme to use.
    # Example: Render resume.json using the 'even' theme to output resume.html
    resumed render resume.json --theme jsonresume-theme-even --output resume.html
  9. Initialize a sample resume with the `init` command

    main

    The init command (aliased as create) generates a sample JSON resume file to help you get started.

    Usage: resumed init [filename] [options]

    # Example: Create a sample resume named my-resume.json
    resumed init my-resume.json
  10. Export a resume to PDF with the `export` command

    main

    The export command uses Puppeteer to convert your JSON resume into a PDF file.

    Usage: resumed export [filename] [options]

    Options:

    • -o, --output: Specify the output filename.
    • -t, --theme: Specify the theme to use.
    • --puppeteer-arg: Pass a launch argument to Puppeteer.
    # Example: Export resume.json to resume.pdf
    resumed export resume.json --output resume.pdf