|
| 1 | +--- |
| 2 | +id: version-4.5.0-rules |
| 3 | +title: Rules |
| 4 | +original_id: rules |
| 5 | +--- |
| 6 | + |
| 7 | +Rules allow npm-package-json-lint to be fully customizable. npm-package-json-lint will only run the rules supplied. As of v2.7.0, there are multiple ways to supply [configuration](configuration.md). One of the easiest way is via a [.npmpackagejsonlintrc.json](rcfile-example.md) file. Please see the default config module, [npm-package-json-lint-config-default](https://github.com/tclindner/npm-package-json-lint-config-default) instead. |
| 8 | + |
| 9 | +## Require node rules |
| 10 | + |
| 11 | +> Generates an error if node is missing from package.json file |
| 12 | +
|
| 13 | +* [require-author](rules/required-node/require-author.md) |
| 14 | +* [require-bin](rules/required-node/require-bin.md) |
| 15 | +* [require-bugs](rules/required-node/require-bugs.md) |
| 16 | +* [require-bundledDependencies](rules/required-node/require-bundledDependencies.md) |
| 17 | +* [require-config](rules/required-node/require-config.md) |
| 18 | +* [require-contributors](rules/required-node/require-contributors.md) |
| 19 | +* [require-cpu](rules/required-node/require-cpu.md) |
| 20 | +* [require-dependencies](rules/required-node/require-dependencies.md) |
| 21 | +* [require-description](rules/required-node/require-description.md) |
| 22 | +* [require-devDependencies](rules/required-node/require-devDependencies.md) |
| 23 | +* [require-directories](rules/required-node/require-directories.md) |
| 24 | +* [require-engines](rules/required-node/require-engines.md) |
| 25 | +* [require-files](rules/required-node/require-files.md) |
| 26 | +* [require-homepage](rules/required-node/require-homepage.md) |
| 27 | +* [require-keywords](rules/required-node/require-keywords.md) |
| 28 | +* [require-license](rules/required-node/require-license.md) |
| 29 | +* [require-main](rules/required-node/require-main.md) |
| 30 | +* [require-man](rules/required-node/require-man.md) |
| 31 | +* [require-module](rules/required-node/require-module.md) |
| 32 | +* [require-name](rules/required-node/require-name.md) |
| 33 | +* [require-optionalDependencies](rules/required-node/require-optionalDependencies.md) |
| 34 | +* [require-os](rules/required-node/require-os.md) |
| 35 | +* [require-peerDependencies](rules/required-node/require-peerDependencies.md) |
| 36 | +* [require-preferGlobal](rules/required-node/require-preferGlobal.md) |
| 37 | +* [require-private](rules/required-node/require-private.md) |
| 38 | +* [require-publishConfig](rules/required-node/require-publishConfig.md) |
| 39 | +* [require-repository-directory](rules/required-node/require-repository-directory.md) |
| 40 | +* [require-repository](rules/required-node/require-repository.md) |
| 41 | +* [require-scripts](rules/required-node/require-scripts.md) |
| 42 | +* [require-types](rules/required-node/require-types.md) |
| 43 | +* [require-typings](rules/required-node/require-typings.md) |
| 44 | +* [require-version](rules/required-node/require-version.md) |
| 45 | + |
| 46 | +## Type rules |
| 47 | + |
| 48 | +> Generates an error if node's value doesn't have the correct data type |
| 49 | +
|
| 50 | +* [bin-type](rules/type/bin-type.md) |
| 51 | +* [bundledDependencies-type](rules/type/bundledDependencies-type.md) |
| 52 | +* [config-type](rules/type/config-type.md) |
| 53 | +* [cpu-type](rules/type/cpu-type.md) |
| 54 | +* [dependencies-type](rules/type/dependencies-type.md) |
| 55 | +* [description-type](rules/type/description-type.md) |
| 56 | +* [devDependencies-type](rules/type/devDependencies-type.md) |
| 57 | +* [directories-type](rules/type/directories-type.md) |
| 58 | +* [engines-type](rules/type/engines-type.md) |
| 59 | +* [files-type](rules/type/files-type.md) |
| 60 | +* [homepage-type](rules/type/homepage-type.md) |
| 61 | +* [keywords-type](rules/type/keywords-type.md) |
| 62 | +* [license-type](rules/type/license-type.md) |
| 63 | +* [main-type](rules/type/main-type.md) |
| 64 | +* [man-type](rules/type/man-type.md) |
| 65 | +* [name-type](rules/type/name-type.md) |
| 66 | +* [optionalDependencies-type](rules/type/optionalDependencies-type.md) |
| 67 | +* [os-type](rules/type/os-type.md) |
| 68 | +* [peerDependencies-type](rules/type/peerDependencies-type.md) |
| 69 | +* [preferGlobal-type](rules/type/preferGlobal-type.md) |
| 70 | +* [private-type](rules/type/private-type.md) |
| 71 | +* [repository-type](rules/type/repository-type.md) |
| 72 | +* [scripts-type](rules/type/scripts-type.md) |
| 73 | +* [version-type](rules/type/version-type.md) |
| 74 | + |
| 75 | + |
| 76 | +## Valid value rules |
| 77 | + |
| 78 | +> Generates an error if node's value doesn't match one of the values in the supplied array |
| 79 | +
|
| 80 | +* [valid-values-author](rules/valid-values/valid-values-author.md) |
| 81 | +* [valid-values-engines](rules/valid-values/valid-values-engines.md) |
| 82 | +* [valid-values-license](rules/valid-values/valid-values-license.md) |
| 83 | +* [valid-values-name-scope](rules/valid-values/valid-values-name-scope.md) |
| 84 | +* [valid-values-private](rules/valid-values/valid-values-private.md) |
| 85 | +* [valid-values-publishConfig](rules/valid-values/valid-values-publishConfig.md) |
| 86 | + |
| 87 | +## Dependency rules |
| 88 | + |
| 89 | +> Generates an error if dependencies fail to meet the rules requirements |
| 90 | +
|
| 91 | +* [no-repeated-dependencies](rules/dependencies/no-repeated-dependencies.md) |
| 92 | + |
| 93 | +* dependencies |
| 94 | + * [no-absolute-version-dependencies](rules/dependencies/no-absolute-version-dependencies.md) |
| 95 | + * [no-archive-dependencies](rules/dependencies/no-archive-dependencies.md) |
| 96 | + * [no-caret-version-dependencies](rules/dependencies/no-caret-version-dependencies.md) |
| 97 | + * [no-file-dependencies](rules/dependencies/no-file-dependencies.md) |
| 98 | + * [no-git-dependencies](rules/dependencies/no-git-dependencies.md) |
| 99 | + * [no-restricted-dependencies](rules/dependencies/no-restricted-dependencies.md) |
| 100 | + * [no-restricted-pre-release-dependencies](rules/dependencies/no-restricted-pre-release-dependencies.md) |
| 101 | + * [no-tilde-version-dependencies](rules/dependencies/no-tilde-version-dependencies.md) |
| 102 | + * [prefer-absolute-version-dependencies](rules/dependencies/prefer-absolute-version-dependencies.md) |
| 103 | + * [prefer-alphabetical-dependencies](rules/dependencies/prefer-alphabetical-dependencies.md) |
| 104 | + * [prefer-caret-version-dependencies](rules/dependencies/prefer-caret-version-dependencies.md) |
| 105 | + * [prefer-no-version-zero-dependencies](rules/dependencies/prefer-no-version-zero-dependencies.md) |
| 106 | + * [prefer-tilde-version-dependencies](rules/dependencies/prefer-tilde-version-dependencies.md) |
| 107 | +* devDependencies |
| 108 | + * [no-absolute-version-devDependencies](rules/dependencies/no-absolute-version-devDependencies.md) |
| 109 | + * [no-archive-devDependencies](rules/dependencies/no-archive-devDependencies.md) |
| 110 | + * [no-caret-version-devDependencies](rules/dependencies/no-caret-version-devDependencies.md) |
| 111 | + * [no-file-devDependencies](rules/dependencies/no-file-devDependencies.md) |
| 112 | + * [no-git-devDependencies](rules/dependencies/no-git-devDependencies.md) |
| 113 | + * [no-restricted-devDependencies](rules/dependencies/no-restricted-devDependencies.md) |
| 114 | + * [no-restricted-pre-release-devDependencies](rules/dependencies/no-restricted-pre-release-devDependencies.md) |
| 115 | + * [no-tilde-version-devDependencies](rules/dependencies/no-tilde-version-devDependencies.md) |
| 116 | + * [prefer-no-version-zero-devDependencies](rules/dependencies/prefer-no-version-zero-devDependencies.md) |
| 117 | + * [prefer-absolute-version-devDependencies](rules/dependencies/prefer-absolute-version-devDependencies.md) |
| 118 | + * [prefer-alphabetical-devDependencies](rules/dependencies/prefer-alphabetical-devDependencies.md) |
| 119 | + * [prefer-caret-version-devDependencies](rules/dependencies/prefer-caret-version-devDependencies.md) |
| 120 | + * [prefer-no-version-zero-devDependencies](rules/dependencies/prefer-no-version-zero-devDependencies.md) |
| 121 | + * [prefer-tilde-version-devDependencies](rules/dependencies/prefer-tilde-version-devDependencies.md) |
| 122 | +* bundledDependencies |
| 123 | + * [prefer-alphabetical-bundledDependencies](rules/dependencies/prefer-alphabetical-bundledDependencies.md) |
| 124 | +* optionalDependencies |
| 125 | + * [prefer-alphabetical-optionalDependencies](rules/dependencies/prefer-alphabetical-optionalDependencies.md) |
| 126 | +* peerDependencies |
| 127 | + * [prefer-alphabetical-peerDependencies](rules/dependencies/prefer-alphabetical-peerDependencies.md) |
| 128 | + |
| 129 | +## Scripts rules |
| 130 | + |
| 131 | +> Generates an error if scripts fail to meet the rules requirements |
| 132 | +
|
| 133 | +* [prefer-alphabetical-scripts](rules/scripts/prefer-alphabetical-scripts.md) |
| 134 | + |
| 135 | +## Format rules |
| 136 | + |
| 137 | +> Generates an error if node's value fails to meet the format requirements |
| 138 | +
|
| 139 | +* [description-format](rules/format/description-format.md) |
| 140 | +* [name-format](rules/format/name-format.md) |
| 141 | +* [version-format](rules/format/version-format.md) |
| 142 | + |
| 143 | + |
| 144 | +## Package.json property rules |
| 145 | + |
| 146 | +> Generates an error if the package.json properties fail to meet the desired requirements |
| 147 | +
|
| 148 | +* [prefer-property-order](rules/package-json-properties/prefer-property-order.md) |
| 149 | +* [no-duplicate-properties](rules/package-json-properties/no-duplicate-properties.md) |
| 150 | + |
| 151 | + |
| 152 | +## Disallowed node rules |
| 153 | + |
| 154 | +> Generates an error if the node is present |
| 155 | +
|
| 156 | +* [prefer-no-engineStrict](rules/disallowed-nodes/prefer-no-engineStrict) |
| 157 | +* [prefer-no-dependencies](rules/disallowed-nodes/prefer-no-dependencies) |
| 158 | +* [prefer-no-devDependencies](rules/disallowed-nodes/prefer-no-devDependencies) |
| 159 | +* [prefer-no-optionalDependencies](rules/disallowed-nodes/prefer-no-optionalDependencies) |
| 160 | +* [prefer-no-peerDependencies](rules/disallowed-nodes/prefer-no-peerDependencies) |
0 commit comments