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

swgear

v0.0.7

Published

A CLI suite to supercharge your Swagger/OpenAPI workflow

Readme

Header

swgear

A CLI suite to supercharge your Swagger/OpenAPI workflow

oclif Version Downloads/week

Usage

$ npm install -g swgear
$ swgear COMMAND
running command...
$ swgear (--version)
swgear/0.0.7 darwin-arm64 node-v18.20.3
$ swgear --help [COMMAND]
USAGE
  $ swgear COMMAND
...

Commands

swgear benchmark [INPUT]

Run HTTP benchmarks against an OpenAPI/Swagger spec or API, with optional thresholds for CI/CD.

USAGE
  $ swgear benchmark [INPUT] [--compare-label <value>] [-w <value>] [-c <value>] [-d <value>] [--grade-range
    <value>] [--grade-threshold Excellent|Good|Acceptable|Needs Improvement] [--label <value>] [--latency-threshold
    <value>] [-o <value>] [--p50-range <value>] [--p90-range <value>] [--p99-range <value>] [--param <value>...] [-p
    <value>...] [--rps-range <value>] [--skip <value>...] [--sort-by p50|p90|p99|rps] [-s <value>]
    [--throughput-threshold <value>] [-u <value>]

ARGUMENTS
  INPUT  OpenAPI/Swagger spec file/URL or Report file (positional)

FLAGS
  -c, --connections=<value>           [default: 10] Number of concurrent connections
  -d, --duration=<value>              [default: 10] Duration of the benchmark in seconds
  -o, --output=<value>                Output file
  -p, --plugins=<value>...            [default: ] Plugins to load
  -s, --spec=<value>                  OpenAPI/Swagger spec file or URL
  -u, --url=<value>                   Base URL for the API
  -w, --compare-with=<value>          Comparison URL or report
      --compare-label=<value>         [default: Benchmark Baseline] Label for the comparison run
      --grade-range=<value>           Custom grading ranges for p50, p90, p99, and rps as comma-separated values.
                                      Example: "p50=50,150,300;p90=100,300,500;p99=200,500,1000;rps=100,20,10". Each
                                      value is Excellent,Good,Acceptable.
      --grade-threshold=<option>      Minimum allowed final grade for the benchmark (Excellent, Good, Acceptable, Needs
                                      Improvement). Fails if the overall grade is worse.
                                      <options: Excellent|Good|Acceptable|Needs Improvement>
      --label=<value>                 [default: Benchmark Report] Label for this benchmark run
      --latency-threshold=<value>     Maximum allowed latency (ms) for p90/p95
      --p50-range=<value>             Custom grading range for p50 as comma-separated values: Excellent,Good,Acceptable.
                                      Example: "50,150,300"
      --p90-range=<value>             Custom grading range for p90 as comma-separated values: Excellent,Good,Acceptable.
                                      Example: "100,300,500"
      --p99-range=<value>             Custom grading range for p99 as comma-separated values: Excellent,Good,Acceptable.
                                      Example: "200,500,1000"
      --param=<value>...              [default: ] Set default value for url path or query parameters, e.g. --param
                                      petId=123. Can be used multiple times.
      --rps-range=<value>             Custom grading range for rps as comma-separated values: Excellent,Good,Acceptable.
                                      Example: "100,20,10"
      --skip=<value>...               [default: ] Skip certain operationId or endpoints by method and path, e.g. --skip
                                      /pets or --skip "POST /pets". Can be used multiple times.
      --sort-by=<option>              [default: p50] Sort comparison output by this metric (p50, p90, p99, rps)
                                      <options: p50|p90|p99|rps>
      --throughput-threshold=<value>  Minimum allowed throughput (RPS)

DESCRIPTION
  Run HTTP benchmarks against an OpenAPI/Swagger spec or API, with optional thresholds for CI/CD.

EXAMPLES
  $ swgear benchmark https://api.example.com/api.yaml

  $ swgear benchmark api.yaml --url https://api.example.com

  $ swgear benchmark --spec api.yaml --url https://api.example.com

  $ swgear benchmark api.yaml --url https://api.example.com --latency-threshold 200 --throughput-threshold 1000

  $ swgear benchmark api.yaml --url https://api.example.com --compare-with https://api.staging.com

  $ swgear benchmark api.yaml --url https://api.example.com --output result.json

See code: src/commands/benchmark/index.ts

swgear client [FILE]

Generate a TypeScript client from your OpenAPI/Swagger spec. (COMING SOON)

USAGE
  $ swgear client [FILE] [-f] [-n <value>]

ARGUMENTS
  FILE  file to read

FLAGS
  -f, --force
  -n, --name=<value>  name to print

DESCRIPTION
  Generate a TypeScript client from your OpenAPI/Swagger spec. (COMING SOON)

EXAMPLES
  $ swgear client

See code: src/commands/client/index.ts

swgear help [COMMAND]

Display help for swgear.

USAGE
  $ swgear help [COMMAND...] [-n]

ARGUMENTS
  COMMAND...  Command to show help for.

FLAGS
  -n, --nested-commands  Include all nested commands in the output.

DESCRIPTION
  Display help for swgear.

See code: @oclif/plugin-help