Skip to content

kellyselden/eslint-plugin-json-files

Repository files navigation

eslint-plugin-json-files

npm version

ESLint JSON processor and rules

Installation

You'll first need to install ESLint:

$ npm i eslint --save-dev

Next, install eslint-plugin-json-files:

$ npm install eslint-plugin-json-files --save-dev

Note: If you installed ESLint globally (using the -g flag) then you must also install eslint-plugin-json-files globally.

Usage

Add json-files to the plugins and processor section of your eslint.config.js configuration file. You can omit the eslint-plugin- prefix:

const jsonFiles = require('eslint-plugin-json-files');

// ...

{
  plugins: {
    'json-files': jsonFiles,
  },
  processor: 'json-files/json',
}

Then configure the rules you want to use under the rules section.

{
  rules: {
    'json-files/rule-name': 'error',
  },
}

Supported Rules

Rule ID Description
json-files/ensure-repository-directory ensure repository/directory in package.json
json-files/ensure-volta-extends ensure volta-extends in package.json
json-files/ensure-workspaces ensure workspace globs in package.json resolve to directories
json-files/eol-last require or disallow newline at the end of package.json
json-files/no-branch-in-dependencies prevent branches in package.json dependencies
json-files/require-engines require the engines field in package.json
json-files/require-license require a license in package.json
json-files/require-unique-dependency-names prevent duplicate packages in dependencies and devDependencies
json-files/restrict-ranges restrict the dependency ranges in package.json
json-files/sort-package-json enforce package.json sorting
json-files/validate-schema require a valid JSON Schema

Footnotes

I wouldn't mind getting this merged into eslint-plugin-node or eslint-plugin-json.

About

ESLint JSON processor and rules

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 11