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

pr-visual

v1.0.14

Published

Generate visual infographics for PR diffs using Gemini

Readme

pr-visual

Generate infographic images from pull requests using Gemini, with Nano Banana Pro and Gemini 3 Flash

'Excalidraw' style:

Example

'Clean' style:

example-clean

Installation

npx pr-visual

Or install globally:

npm install -g pr-visual

Authentication

Option 1: Google OAuth (recommended)

pr-visual login

Opens browser to authenticate with your Google account. Uses your own Gemini quota.

Option 2: API Key

export GEMINI_API_KEY=your_key_here
pr-visual

Get a key at aistudio.google.com/apikey

Usage

Interactive Mode

pr-visual

Walks you through selecting what to visualize and which style to use.

Non-Interactive Mode

# Visualize branch diff
pr-visual --mode branch --yes

# Visualize staged changes
pr-visual --mode staged --yes

# Visualize a specific commit
pr-visual --mode commit --commit abc1234 --yes

# Custom output path
pr-visual --mode branch --yes --output my-visual.png

Visual Styles

pr-visual --mode branch --style excalidraw --yes

| Style | Description | |-------|-------------| | clean | Corporate/PowerPoint style (default) | | excalidraw | Hand-drawn whiteboard aesthetic | | minimal | Simple, icon-heavy, lots of whitespace | | tech | Dark mode with neon accents | | playful | Colorful and fun with illustrations |

Custom Prompts

Skip diff analysis and provide your own prompt:

pr-visual --prompt "Create an infographic showing a login flow" --yes
pr-visual --prompt-file my-prompt.txt --yes

GitHub Action

Automatically generate and post infographics on PRs.

Setup

  1. Add GEMINI_API_KEY to your repository secrets
  2. Create .github/workflows/pr-visual.yml:
name: PR Visual

on:
  pull_request:
    types: [opened, synchronize]

jobs:
  visualize:
    runs-on: ubuntu-latest
    permissions:
      contents: write
      pull-requests: write

    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - uses: gitethanwoo/pr-visual@v1
        with:
          gemini-api-key: ${{ secrets.GEMINI_API_KEY }}
          style: clean  # optional

The action will:

  • Use Gemini CLI to intelligently analyze the PR (can read files for context, not just the diff)
  • Generate an infographic from the analysis
  • Upload it to a GitHub Release (no commits to your PR branch!)
  • Post a comment with the image and a collapsible prompt/history section

CLI Reference

pr-visual [command] [options]

Commands:
  login     Login with Google OAuth
  logout    Clear stored credentials
  status    Show authentication status
  upgrade   Upgrade to the hosted version
  (none)    Generate infographic (default)

Options:
  -h, --help              Show help
  -m, --mode <mode>       Diff mode: branch, commit, staged, unstaged
  -s, --style <style>     Visual style: clean, excalidraw, minimal, tech, playful
  -p, --prompt <text>     Custom prompt (bypasses diff analysis)
  --prompt-file <path>    Read prompt from file
  -c, --commit <hash>     Commit hash (for mode=commit)
  -y, --yes               Skip confirmation prompt
  -o, --output <path>     Output file path

License

ISC