
Security News
Crates.io Implements Trusted Publishing Support
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
eslint-plugin-json-es
Advanced tools
A JSON parser for ESLint that works with a lot of existing ESLint rules or your custom rules.
npm install eslint-plugin-json-es --save-dev
This is an example ESLint configuration for all *.json files. It extends the recommended rules for JSON.
{
"overrides": [{
"files": ["*.json"],
"parser": "eslint-plugin-json-es",
"extends": "plugin:eslint-plugin-json-es/recommended",
"rules": {
}
}]
}
See the example branch for different use cases and ESLint configurations.
There are three different ways how to add JSON linting to ESLint. Select the package that fits your needs:
eslint-plugin-json-es | eslint-plugin-json | eslint-plugin-jsonc | |
---|---|---|---|
Version | |||
Engine | ESLint espree parser | VSCode JSON Validation | Custom AST parser |
ESLint version | >7.0.0 | ? | >6.0.0 |
Custom rules | ✔ | ❌ | ✔ (1) |
Use existing ESLint rules | ✔ (2) | ❌ | ❌ |
Fix Code | ✔ | ❌ | ✔ (partly) |
Rule compare guide | - | Compare | #TODO :-( |
(1) Uses custom AST node types
(2) Not every ESLint rule makes sense for JSON
Auto-fix | Rule | Version |
---|---|---|
🔧 | comma-dangle | > 1.3.0 |
no-dupe-keys | > 1.3.0 | |
🔧 | no-extra-parens | > 1.4.0 |
no-irregular-whitespace | > 1.3.0 | |
no-loss-of-precision | > 1.3.0 | |
no-undefined | > 1.3.0 | |
🔧 | quotes | > 1.3.0 |
🔧 | quote-props | > 1.3.0 |
Based on the recommended rules with stylistic aspects.
Auto-fix | Rule | Comment |
---|---|---|
🔧 | indent | 4 |
🔧 | no-multiple-empty-lines | |
sort-keys | Alternative with fix eslint-plugin-sort-keys-fix |
A list of optional rules that can be added to your configuration.
json-es/use-camelcase
The "original" ESLint camelcase rule does not work with JSON files.
A custom 'use-camelcase' rule is available. Based on the ESLint camelcase rule with minor adjustments.
Configuration
{
"rules": {
"json-es/use-camelcase": ["error", {"allow": ["FOO", "[regex]*"]}]
}
}
v1.6.0
25 April 2024
use-camel-case
rule (closes #45)** Note:** Node.js 16.x is no longer supported (it may or may not work). Node.js 22.x tested.
FAQs
A JSON parser for ESLint.
We found that eslint-plugin-json-es 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
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
Research
/Security News
Undocumented protestware found in 28 npm packages disrupts UI for Russian-language users visiting Russian and Belarusian domains.
Research
/Security News
North Korean threat actors deploy 67 malicious npm packages using the newly discovered XORIndex malware loader.