Security News
JSR Working Group Kicks Off with Ambitious Roadmap and Plans for Open Governance
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
eslint-plugin-json-format
Advanced tools
Lint and auto-fix your json
with eslint
json
files (files ending with .json
or rc
)package.json
files (default true
, can be disabled and sorting configured)json-with-comments
files (default ["**/.tsconfig.json", ".vscode/**"]
)["**/package-lock.json"]
)You'll first need to install ESLint:
npm i eslint --save-dev
Next, install eslint-plugin-json-format
:
npm install eslint-plugin-json-format --save-dev
Add json-format
to the plugins section of your .eslintrc
configuration file. You can omit the eslint-plugin-
prefix:
{
"plugins": [
"json-format"
]
}
cli example:
# lint entire poject for js and various json files
eslint --ext .js,.json,.eslintrc,.babelrc --fix .
Note: In order to lint hidden files (e.g.
.eslintrc
,.babelrc
), you'll need to modify/create a.eslintignore
in your project root with these contents:.eslintignore
:
# eslint ignores hidden files by default
!.*
.eslintrc
):"settings": {
"json/sort-package-json": true,
"json/ignore-files": ["**/package-lock.json"],
"json/json-with-comments-files": ["**/tsconfig.json", ".vscode/**"],
"json/package-json-sort-order": [
"name",
"version",
"description",
"private",
"main",
"browser",
"scripts",
"husky",
"dependencies",
"devDependencies",
"peerDependencies",
"files",
"bin",
"engines",
"types",
"typings",
"productName",
"license",
"repository",
"homepage",
"author",
"bugs",
]
}
Note: glob patterns use
minimatch
against pathnames relative to the project root (cwd)
to turn off sort-package-json
for example, in your .eslintrc
:
{
"plugins": [
"json-format"
],
"settings": {
"json/sort-package-json": false,
}
}
to format tsconfig.json
(this will strip comments!), in your .eslintrc
:
{
"plugins": [
"json-format"
],
"settings": {
"json/json-with-comments-files": [],
}
}
change the sort order of package.json
:
{
"plugins": [
"json-format"
],
"settings": {
"json/package-json-sort-order": ["license", "dependencies"],
}
}
VSCode:
In order for editor integration via the vscode-eslint
extension, you'll need to enable linting json
files.
settings.json
:
// enable eslint fix-on-save
"eslint.autoFixOnSave": true,
"eslint.validate": [
{
"language": "json",
"autoFix": true
},
to auto-format
json-with-comments-files
, also add"language": "jsonc"
large amount of code borrowed from eslint-plugin-html
FAQs
lint and auto-fix json
The npm package eslint-plugin-json-format receives a total of 55,516 weekly downloads. As such, eslint-plugin-json-format popularity was classified as popular.
We found that eslint-plugin-json-format demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
Security News
Research
An advanced npm supply chain attack is leveraging Ethereum smart contracts for decentralized, persistent malware control, evading traditional defenses.
Security News
Research
Attackers are impersonating Sindre Sorhus on npm with a fake 'chalk-node' package containing a malicious backdoor to compromise developers' projects.