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

coderifts

v1.8.3

Published

Detect breaking API changes from the command line. Works locally or with the CodeRifts cloud API.

Downloads

657

Readme

CodeRifts CLI

Detect breaking API changes between OpenAPI specs from the command line. Works locally or with the CodeRifts cloud API.

Installation

npm install -g coderifts

Or run without installing:

npx coderifts diff old-api.yaml new-api.yaml

Quick Start

# Compare two specs locally
coderifts diff old-api.yaml new-api.yaml

# Use cloud API for full governance report
coderifts login
coderifts diff old-api.yaml new-api.yaml --cloud

# CI mode — exit 1 if risk score exceeds threshold
coderifts diff old-api.yaml new-api.yaml --ci --threshold 50

Commands

coderifts diff <old-spec> <new-spec>

Compare two OpenAPI specs and report breaking changes.

| Flag | Description | Default | |------|-------------|---------| | -f, --format <format> | Output format: terminal, json, markdown | terminal | | --ci | CI mode — exit code 1 if breaking changes exceed threshold | false | | --threshold <number> | Risk score threshold for CI mode (0-100) | 50 | | --cloud | Use CodeRifts cloud API instead of local analysis | false | | -c, --config <path> | Path to .coderifts.yml config file | auto-detect |

Output formats:

  • terminal — Colored tables and risk score box (default)
  • json — Full structured report for programmatic use
  • markdown — Markdown table for CI comments

A coderifts-report.json file is always saved to the current directory.

coderifts init

Interactive configuration generator. Creates a .coderifts.yml file with industry-specific presets:

  • Default (recommended)
  • Fintech / Payments
  • Healthcare / HIPAA
  • Platform / API-First
  • E-commerce

coderifts login

Save your CodeRifts API key for cloud features. Get a free key at app.coderifts.com/api/signup.

CI/CD Integration

GitHub Actions

- name: Check API breaking changes
  run: npx coderifts diff old-api.yaml new-api.yaml --ci --format json

GitLab CI

api-check:
  script:
    - npx coderifts diff old-api.yaml new-api.yaml --ci --threshold 40

Jenkins

sh 'npx coderifts diff old-api.yaml new-api.yaml --ci'

Reproduce our accuracy corpus

We publish the accuracy claims as a runnable proof matrix. Reproduce it yourself with one command — no repo, no API key, no cloud:

npx coderifts corpus verify

This evaluates every trust vector (false-positive / false-negative cases, including MCP prompt-injection "poison" vectors) through the real engine and prints a per-vector PASS/FAIL table plus precision/recall. It exits 0 only when every evaluated vector passes (CI-friendly). Add --json for machine-readable output.

Two honest modes:

  • MCP vectors (13) run on bundled pure-JS engines — always verified offline.

  • OpenAPI vectors (9) need the oasdiff engine. The command auto-detects it: if present, all 22/22 are verified with the exact engine semantics our service uses; if absent, the 9 OpenAPI vectors are skipped (not failed) with a "13 of 22 verified" note. We do not substitute a weaker JS diff engine, because it would report different verdicts. To verify all 22 offline:

    brew install oasdiff            # macOS
    go install github.com/tufin/oasdiff@latest   # any platform with Go
    npx coderifts corpus verify

Environment Variables

| Variable | Description | |----------|-------------| | CODERIFTS_API_KEY | API key (alternative to coderifts login) | | CODERIFTS_OASDIFF_BIN | Explicit path to the oasdiff binary (overrides auto-detect) | | NO_COLOR | Disable colored output |

Exit Codes

| Code | Meaning | |------|---------| | 0 | No breaking changes (or below threshold) | | 1 | Breaking changes found (in CI mode) or analysis failed |

Links