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

compatify

v2.0.4

Published

Node.js dependency compatibility checker - detect version conflicts, peer dependency issues, and deprecated packages

Readme

Compatify 🔍

A Node.js CLI tool to detect dependency compatibility issues in your Node.js projects

npm version License: MIT Node.js Version Tests Coverage Security Production Ready

🚀 Features

  • Peer Dependency Conflict Detection - Identifies mismatches between peer dependencies across your dependency tree
  • Node.js Engine Compatibility - Validates that all dependencies are compatible with your Node.js version
  • Known Incompatibility Detection - Checks against a curated database of known incompatible package combinations
  • ESM/CommonJS Conflict Detection - Identifies potential issues with mixed module systems
  • Deprecated Package Warnings - Alerts you to deprecated packages in your dependency tree
  • Clear, Actionable Reports - Provides detailed reports with severity levels and suggested fixes
  • Multiple Output Formats - Supports human-readable table output and JSON for CI/CD integration

📦 Installation

Global Installation (Recommended)

npm install -g compatify

Local Installation

npm install --save-dev compatify

🛠️ Usage

Check Current Directory

compatify check

Check Specific Project

compatify scan /path/to/project

Check Remote GitHub Repository (New!)

compatify remote https://github.com/owner/repo

Supports various GitHub URL formats:

  • https://github.com/owner/repo
  • https://github.com/owner/repo/tree/branch-name
  • https://github.com/owner/repo.git

Output as JSON

compatify check --json

Verbose Output

compatify check --verbose

📊 Example Output

🔍 Analyzing dependencies in: /Users/dev/my-project

✖ Found 3 compatibility issues:

┌──────────────────┬─────────┬──────────────────────────────────────────┐
│ Package          │ Severity│ Issue                                    │
├──────────────────┼─────────┼──────────────────────────────────────────┤
│ react / react-dom│ error   │ [email protected] requires react-dom@^18.0.0 │
│                  │         │ but found [email protected]               │
├──────────────────┼─────────┼──────────────────────────────────────────┤
│ typescript       │ warning │ Node.js 14.x is deprecated, upgrade to   │
│                  │         │ Node.js 18+ for TypeScript 5.0+          │
├──────────────────┼─────────┼──────────────────────────────────────────┤
│ node-sass        │ warning │ node-sass is deprecated, use 'sass'      │
└──────────────────┴─────────┴──────────────────────────────────────────┘

💡 Suggested fixes:
  • npm install react-dom@^18.0.0
  • npm install sass && npm uninstall node-sass

🔧 Configuration

Create a .compatifyrc.json file in your project root:

{
  "ignore": ["some-package"],
  "severity": {
    "deprecated": "warning",
    "peerDependency": "error"
  },
  "cache": true,
  "cacheTTL": 86400
}

🤝 Contributing

Contributions are welcome! Here's how you can help:

  1. Report Bugs - Open an issue if you find a bug
  2. Suggest Features - Have an idea? Let us know!
  3. Submit Compatibility Rules - Know of a compatibility issue? Add it to our rules database
  4. Improve Documentation - Help make our docs better

Adding Compatibility Rules

To contribute a new compatibility rule, add it to data/rules.json:

{
  "package": "react",
  "version": "^18.0.0",
  "incompatibleWith": [
    {
      "package": "react-dom",
      "versionRange": "<18.0.0",
      "reason": "React 18 requires react-dom 18+",
      "severity": "error"
    }
  ]
}

📝 License

MIT © hash-chandra

🙏 Acknowledgments

Built with:

📮 Support