eslint-plugin-catalogs-sort
v0.0.0-alpha.0
Published
An ESLint plugin that sorts package.json dependencies by catalog group and package name.
Downloads
177
Maintainers
Readme
eslint-plugin-catalogs-sort
Sort dependency fields in package.json by catalog groups, with autofix.
Install
pnpm add -D eslint-plugin-catalogs-sortQuick Start (ESLint Flat Config)
import { configs } from 'eslint-plugin-catalogs-sort'
export default [
...configs.recommended,
]Rule
catalogs-sort/catalogs-sort- Source: src/rules/catalogs-sort.ts
- Fixable:
code
Default fields:
dependenciesdevDependenciespeerDependenciesoptionalDependenciesresolutionspnpm.overrides
Options:
| Option | Type | Default | Description |
| --- | --- | --- | --- |
| fields | string[] | built-in list above | Field paths to sort |
| catalogOrder | string[] | [] | Custom catalog group order |
| otherGroupPosition | 'first' \| 'last' | 'last' | Position of non-catalog: group |
Example
Before:
{
"dependencies": {
"@repo/config": "workspace:*",
"@vueuse/core": "catalog:vue",
"axios": "catalog:shared",
"dayjs": "^1.11.13",
"pinia": "catalog:vue",
"vue": "catalog:vue",
"vue-router": "catalog:vue",
"zod": "catalog:shared"
}
}After eslint --fix:
{
"dependencies": {
"axios": "catalog:shared",
"zod": "catalog:shared",
"@vueuse/core": "catalog:vue",
"pinia": "catalog:vue",
"vue": "catalog:vue",
"vue-router": "catalog:vue",
"@repo/config": "workspace:*",
"dayjs": "^1.11.13"
}
}License
MIT License © jinghaihan
