An open API service indexing awesome lists of open source software.

https://github.com/webdeveric/check-package-manager

Check that you're using the correct package manager
https://github.com/webdeveric/check-package-manager

Last synced: 8 days ago
JSON representation

Check that you're using the correct package manager

Awesome Lists containing this project

README

        

# check-package-manager

[![Node.js CI](https://github.com/webdeveric/check-package-manager/actions/workflows/node.js.yml/badge.svg)](https://github.com/webdeveric/check-package-manager/actions/workflows/node.js.yml)

Check that the correct package manager is being used with your project.

To configure the correct package manager, you can use the [`packageManager` property](https://nodejs.org/api/packages.html#packagemanager) in your `package.json` file or you can specify it in the cli arguments.

:information_source: This package requires **Node >= `18`**. If you use an older Node version, the cli will exit and print a warning.

## Install

```shell
npm i check-package-manager -D
```

:information_source: You can use `npx check-package-manager [options]` in your `preinstall` script if you don't want to add it as a dependency.

## Usage

```sh
check-package-manager [options] [packageManager]
```

:information_source: Depending on the package manager being used, the `preinstall` script may get invoked after dependencies are installed.

### Arguments

`packageManager` (optional) - `[@]`

### Options

`--info` - Print info messages

`--debug` - Print debug messages

## Examples

When using [corepack](https://nodejs.org/api/corepack.html):

```json
{
"name": "YOUR-PACKAGE-NAME",
"version": "1.0.0",
"packageManager": "[email protected]",
"scripts": {
"preinstall": "npx check-package-manager"
}
}
```

Specify the package manager name and version yourself:

```json
{
"name": "YOUR-PACKAGE-NAME",
"version": "1.0.0",
"scripts": {
"preinstall": "npx check-package-manager [email protected]"
}
}
```

Specify only the package manager name:

```json
{
"name": "YOUR-PACKAGE-NAME",
"version": "1.0.0",
"scripts": {
"preinstall": "npx check-package-manager yarn"
}
}
```

## Local development

```
fnm use
corepack enable
pnpm install
pnpm build
```