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

synopkg

v14.0.1

Published

Consistent dependency versions in large JavaScript Monorepos

Readme

Synopkg JavaScript Monorepos.

Installation

npm install --save-dev synopkg

Guides

Commands

All command line options can be combined to target packages and dependencies in multiple ways.

lint

Ensure that multiple packages requiring the same dependency define the same version, so that every package requires eg. [email protected], instead of a combination of [email protected], [email protected], and [email protected].

Examples

# Find all issues in "dependencies" or "devDependencies"
synopkg lint --dependency-types prod,dev
# Only lint issues in "react" specifically
synopkg lint --dependencies react
# Look for issues in dependencies containing "react" in the name
synopkg lint --dependencies '**react**'
# Find issues in scoped packages only
synopkg lint --dependencies '@types/**'
# Find issues everywhere except "peerDependencies"
synopkg lint --dependency-types '!peer'
# Only look for issues where an exact version is used (eg "1.2.3")
synopkg lint --specifier-types exact
# Sort dependencies by how many times they are used
synopkg lint --sort count
# See more examples
synopkg lint --help
# See a short summary of options
synopkg lint -h

fix

Fix every autofixable issue found by synopkg lint.

Examples

# Only fix issues in dependencies and devDependencies
synopkg fix --dependency-types prod,dev
# Only fix inconsistencies with exact versions (eg "1.2.3")
synopkg fix --specifier-types exact
# Only fix issues in "react" specifically
synopkg fix --dependencies react
# See more examples
synopkg fix --help
# See a short summary of options
synopkg fix -h

update

Update packages to the latest versions from the npm registry, wherever they are in your monorepo.Semver range preferences are preserved when updating.

Examples

# Accept any update in latest (x.x.x)
synopkg update --target latest
# Only update minor versions (1.x.x)
synopkg update --target minor
# Only update patch versions (1.2.x)
synopkg update --target patch
# Check for outdated dependencies in one package
synopkg update --check --source 'packages/pingu/package.json'
# Update dependencies and devDependencies in the whole monorepo
synopkg update --dependency-types dev,prod
# Only update dependencies with a semver range specifier (^, ~, etc.)
synopkg update --specifier-types range
# Update dependencies where name exactly matches 'react'
synopkg update --dependencies 'react'
# Update dependencies where name contains 'react'
synopkg update --dependencies '**react**'
# Update dependencies with the '@aws-sdk' scope
synopkg update --dependencies '@aws-sdk/**'
# See more examples
synopkg update --help
# See a short summary of options
synopkg update -h

format

Organise package.json files according to a conventional format, where fields appear in a predictable order and nested fields are ordered alphabetically. Shorthand properties are used where available, such as the "repository" and "bugs" fields.

Examples

# Fix every formatting issue in the monorepo
synopkg format
# List all formatting issues in the monorepo
synopkg format --check
# Check the formatting of one package
synopkg format --check --source 'packages/pingu/package.json'
# See more examples
synopkg format --help
# See a short summary of options
synopkg format -h

list

Query and inspect all dependencies in your project, both valid and invalid.

Examples

# Sort dependencies by how many times they are used
synopkg list --sort count
# Show every instance of each dependency, not just their names
synopkg list --show instances
# Show dependencies ignored in your synopkg config
synopkg list --show ignored
# Show highest level of detail
synopkg list --show all
# Choose only some values
synopkg list --show hints,statuses
# List all "peerDependencies"
synopkg list --dependency-types peer
# List all types packages
synopkg list --dependencies '@types/**'
# List instances of an exact version being used as a peer dependency
synopkg list --specifier-types exact --show instances --dependency-types peer
# See more examples
synopkg list --help
# See a short summary of options
synopkg list -h

json

Output the state of every instance of every dependency as a JSON object, one per line. This command is best used with tools like jq for filtering and processing.

Examples

# Output all dependencies as JSON
synopkg json
# Output only AWS SDK dependencies
synopkg json --dependencies '@aws-sdk/**'
# Count dependencies by type
synopkg json | jq -r '.dependencyType' | sort | uniq -c
# See more examples
synopkg json --help
# See a short summary of options
synopkg json -h

Badges

  • support on ko-fi
  • NPM version
  • NPM downloads
  • Build Status