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

@drfrost/xum

v1.0.0-alpha.10

Published

Extremely Universal Manager - A cli app that unifies all Node package managers.

Downloads

18

Readme

Extremely Universal Manager (xum)

A cli app that unifies all Node package managers. The command line application automatically detects and maps commands for most popular Node package managers.

The app aims to make life easier for developers who work on multiple projects using different package managers. Remembering which project uses which PM or checking it every time becomes labor work at some point.

⚠️ The app is still in alpha stage. Breaking changes might get introduced and the API is also prone to changes.

Installation

The package is available on npmjs CDN. Install xum globally using your preferred PM:

NPM

npm i -g @drfrost/xum

Yarn

yarn global add @drfrost/xum

To verify that the app was successfuly installed, run xum --version.

Supported PM’s

The app uses a modified preferred-pm package internally which essentially detects following package managers:

  • npm
  • yarn
  • pnpm
  • bun

Usage

XUM takes the best from both npm and yarn. The following commands are currently implemented:

Commands

| Command | Description | | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | | xum info | Display information about preferred package managers for current directory/workspace. | | xum install | Install dependencies | | xum run | Run a script found in package.json. | | xum add | Add specified dependencies. | | xum upgrade | Update specified dependencies. | | xum list | List project dependencies. | | xum remove | Remove specified dependencies. | | xum dev add | Add specified dev dependencies. | | xum init | Initialize new package. Prompt will ask for preferred PM if not provided with the --manager flag. | | xum | Run a wildcard command. Use with caution since your command won't be validated. Use with the --manager flag to make sure you run commands for the correct PM. | | xum help | Display help. |

ℹ️ We will gradually implement more commands and eventually we hope to deprecate the wild command.

⚠️ Global dependencies are not being handled by the application and support was not planned yet.

Flags

Most commands accept the --manager <npm|yarn|pnpm|bun> flag which will force using the specified package manager.

FAQ

How to run an unsupported command?

In order to run an unsupported command, use the xum <command> command. e.g. xum audit which in a yarn workspace will execute yarn list. Since 1.0.0-alpha.6 you can omit the wild part and simply pass the actual command. However same as with the wild command, it will not be validated and it's advised to append the --manager <npm|yarn|pnpm|bun> flag. The warning prompt can be skipped by passing the --skip-prompt flag.