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

@clearlint/eslint-migrate

v1.0.1

Published

CLI tool to analyze and migrate ESLint v9 configs to v10

Readme

@clearlint/eslint-migrate

Analyze and migrate ESLint v9 configs to v10. Understand your migration cost before you commit.

The Problem

ESLint v10 removes eslintrc format entirely. If your project uses .eslintrc, .eslintrc.json, or package.json eslintConfig, you need to:

  1. Convert to flat config (eslint.config.js)
  2. Handle removed rules
  3. Adjust rule options that changed

This tool analyzes your current config and generates a v10-compatible flat config.

Usage

npx @clearlint/eslint-migrate analyze [dir]
npx @clearlint/eslint-migrate generate [dir]
npx @clearlint/eslint-migrate report [dir]

analyze — Understand your migration cost

npx @clearlint/eslint-migrate analyze ./my-project

Output:

🔍 Analyzing ESLint config in: ./my-project

  Config type: eslintrc
  Config file: .eslintrc.json

  Rules analyzed: 42
  Compatible:     38
  Removed:        3
  Needs review:   1
  Unknown:        0

  Details:
    ✅ no-eval: compatible
    ❌ callback-return: removed in v10
    ⚠️  custom-rule: needs review

generate — Create a v10 flat config

npx @clearlint/eslint-migrate generate ./my-project

Creates eslint.config.js with:

  • All compatible rules preserved
  • Removed rules removed (commented out with migration notes)
  • Unknown rules flagged for manual review

report — Full migration report

npx @clearlint/eslint-migrate report ./my-project

Generates eslint-migration-report.json with:

  • Rule-by-rule compatibility analysis
  • Effort estimate (low / medium / high)
  • Step-by-step recommendations

Install

npm install --save-dev @clearlint/eslint-migrate

How it works

  1. Discover — Finds your ESLint config (eslintrc, flat, or package.json)
  2. Analyze — Checks each rule against the v10 rule set
  3. Generate — Creates a flat config with migration notes
  4. Report — Produces a structured JSON report

Migration Phases

| Phase | Description | Command | |-------|-------------|---------| | 1 | Config discovery | eslint-migrate analyze | | 2 | Rule compatibility | (included in analyze) | | 3 | Config generation | eslint-migrate generate | | 4 | Report + effort estimate | eslint-migrate report |

Caveats

  • The generated config is a starting point, not a drop-in replacement
  • Custom plugin rules and shareable configs are not analyzed
  • Always run npx eslint . after migration to verify
  • ESLint v10 removes approximately 15 core rules — the tool flags these

Disclaimer: This tool assists with ESLint v10 migration planning. Always verify the generated config against your project's requirements. Rule behavior may differ between v9 and v10 even for compatible rules.