# ri A rust version ni. > [ni](https://github.com/antfu/ni) - 💡 Use the right package manager
cargo install rni
npm · yarn · pnpm · bun
### `ri` - install ```bash ri # npm install # yarn install # pnpm install # bun install ```

ri

```bash ri vite # npm i vite # yarn add vite # pnpm add vite # bun add vite ``` ```bash ri -f # npm ci # yarn install --frozen-lockfile # pnpm i --frozen-lockfile # bun install --no-save ``` ### `ri r` - run ```bash ri r dev # npm run dev # yarn run dev # pnpm run dev # bun run dev ``` Specially, you can use `ri rd` to run scripts ` run dev` ```bash ri r # interactively select the script to run # supports https://www.npmjs.com/package/npm-scripts-info convention ```

ri r

### `ri un` - uninstall ```bash ri un webpack # npm uninstall webpack # yarn remove webpack # pnpm remove webpack # bun remove webpack ``` ## Other useful commands ### clean your workspace - use `ri rm` to remove node_modules/** - use `ri rl` to remove lockfile of current agent, like `yarn.lock` / `pnpm-lock.yaml` / `package-lock.json` / `bun.lockb` ### clone a repo > you don't need to paste the url, just press enter - step 1: copy the repo url - step 2: `ri cl` full command: `ri cl ` ### git push - `ri ps` - git push ### git pull - `ri pl` - git pull ### git log - `ri log` ```bash git log --graph --oneline --decorate ``` ### get package info - `ri info` - get package info of current directory ### Open the browser to the package's repository - `ri repo` - open the browser to the package's repository
### How? **ri** assumes that you work with lockfiles (and you should) Before it runs, it will detect your `yarn.lock` / `pnpm-lock.yaml` / `package-lock.json` / `bun.lockb` to know current package manager (or `packageManager` field in your packages.json if specified), and runs the [corresponding commands](https://github.com/JiatLn/ri/blob/main/src/agents.rs). ## License [MIT](./LICENSE) License © 2022-Present [JiatLn](https://github.com/JiatLn)