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 🙏

© 2024 – Pkg Stats / Ryan Hefner

nrush

v1.0.5

Published

A speedy way to get your node project up to date, and probably break things.

Downloads

37

Readme

nrush

nrush 🦀

A speedy way to update all packages in a Node/Bun project. (probably) less featured, less tested, and less reliable alternative to npm-check-updates, but hey, it's blazingly fast 🔥

Usage

Bun

bunx nrush@latest

Node

npx nrush@latest

Commands:

  • nrush about - Display comprehensive information about NRush.
  • nrush help - Provide a usage guide for NRush. Primarily, this section.

Arguments: (Arguments are applicable only if no commands are supplied and only nrush is executed.)

  1. Update Options (-u / --update):

    • Automatically updates all dependencies without user interaction.
  2. Interactive Mode (-i / --interactive)

    • User can select which packages to update. Defaults to this if both -u and -i are supplied.
  3. Include (--include <dev,peer>):

    • Include dev and/or peer dependencies in the update process. Default is none, but can be modified to include dev and/or peer, separated by commas.
  4. Path Specification (-p <path> / --path <path>):

    • Specify the path to a package.json file. The default is the current directory.
  5. Skip Ranges in Versioning (--skip-ranges):

    • Skips version ranges in package.json. Default is false, preserving them.
    • Example: ^1.0.0 will be updated to 2.0.0 if --skip-ranges is supplied.
  6. Update Any Version (--update-any):

    • Updates * versions in package.json. Default is false, maintaining them.
    • Example: * will be updated to 2.0.0 if --update-any is supplied.
  7. Semver Constraint (-s <semver> / --semver <semver>):

    • Specify a maximum semver range to update to. Choose either major, minor, or patch. Default is major.
    • This currently does nothing.

By executing nrush without any arguments or commands, a list of updatable packages will be displayed, and you'll be prompted to install them._.

Purpose

I made this as a personal alternative to npm-check-updates, mostly as a challenge to write a less feature-packed, faster version that checks the packages concurrently, resulting in 🔥speed🔥.

From my testing, here are the differences (same project, ~60 dependencies)

  • bunx npm-check-updates -u takes ~30 seconds
  • bunx nrush -u takes ~2 seconds

Yes, that's more than 90% faster. Concurrency baby.

Contributing

Please do. I don't really do Rust that often, and all of this was done in 30 minutes.

Goals

  • full feature set from npm-check-updates

Notes

  • nrush is short for npm rush, as in "please get me up to date, I want the bleeding edge stuff and I love suffering"
  • this completely ignores version ranges set in your package.json. Watch out.
  • couldn't get this to build on Mac. I'll fix it eventually.