See how Frete cut frontend build time by 70%

What are best AI tools? Take the State of AI survey

Builder.io
Builder.io
Contact sales
‹ Back to blog

Web development

Say Goodbye to Package Manager Chaos with ni

February 22, 2023

Written By Vishwas Gopinath

Have you ever found yourself working on multiple projects that use different package managers and accidentally run the wrong one in the wrong project?

This can create a mess of conflicting lock files and dependencies, causing wasted time. Fortunately, there is a solution to this problem: ni.

ni is an uncomplicated yet powerful tool that lets you run the right package manager for any project without having to remember which one it uses. This blog post explains how to use ni and its various commands.

Installing NI

To install ni, run the following command in your terminal:

npm i -g @antfu/ni

The -g flag installs it globally so you can use it across all of your projects.

Using NI

ni has several commands that make it easier to use the correct package manager in your project. Below, we cover the list of most common commands in detail.

ni to install packages

The ni command installs packages using the correct package manager for your project. To use it, just run the command followed by the package name.

# Install React, automatically using the correct package manager
# Does `npm install react` for npm, `yarn install react` for yarn, etc
ni react

This command installs React using the correct package manager (npm, yarn, pnpm, or bun).

Use -D for dev dependencies:

# For dev depencencies
ni @types/react -D

Use --frozen to avoid writing to lockfiles:

# Equivalent to npm ci, yarn install --immutable, etc
ni --frozen

nr to run scripts

The nr command runs scripts in your project using the correct package manager. To use it, run the command followed by the script name and any options.

# Run `npm start` in npm, `yarn start` for yarn, etc
nr start

This command runs the start script using the correct package manager.

This also has one handy benefit — you do not need -- to separate args for your script:

# Equivalent of `npm run serve -- --port 8080`, `yarn run serve --port 8080`, etc
nr serve --port 8080

You can also just run nr to interactively choose which script to run:

nix to execute packages

The nix command executes packages using the correct package manager for your project. To use it, run the command followed by the package name.

# Equivalent to `npx jest` in npm, `yarn dlx jest` in yarn, etc
nix jest

This command executes Jest using the correct package manager.

nu to upgrade packages

The nu command updates outdated packages using the correct package manager for your project. To use it, run the command followed by any options.

# Equivalent to `npm upgrade`, `yarn up`, etc
nu

This command updates all packages to their latest versions using the correct package manager.

nun to uninstall packages

The nun command uninstalls packages using the correct package manager for your project. To use it, run the command followed by the package name.

# Equivalent to `npm uninstall react`, `yarn remove react`, etc
nun react

This command uninstall React using the correct package manager.

Change directory with -C

You can also use ni to change a directory and run commands in the new directory.

ni -C packages/foo react

This command changes the directory to packages/foo and install React using the correct package manager.

Conclusion

By using ni, you can save yourself a lot of time and avoid the frustration of dealing with conflicting lock files and dependencies. So if you haven't already, give ni a try — you won't regret it!

Share

Twitter
LinkedIn
Facebook

Announcing Builder 2.0:

Multiplayer coding

Real-time collaboration, parallel agents, and visual editing. The whole team ships real code with Al now.

Try for free

Continue Reading
AI3 MIN
Announcing Quality Review Agent: Agentic QA on Every PR
WRITTEN BYVishwas Gopinath
April 30, 2026
AI8 MIN
When Agents Work for the Whole Team
WRITTEN BYAmy Cross
May 1, 2026
Design14 MIN
Claude Design Review: An Innovative Way to Brainstorm with AI
WRITTEN BYAlice Moore
April 29, 2026