antfu/case-police
antfu/case-police has 1,425 GitHub stars and 92 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-07 06:18 UTC. Last push 2026-04-15.
🚨 Make the case correct, PLEASE!
Measured star growth
- in 24h
- 0
- in 7 days
- Update delayed
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
Original🚨 CasePolice
- GitHub, not Github
- TypeScript, not Typescript
- macOS, not MacOS
- VS Code, not Vscode
- ...
Make the case correct, PLEASE!
Usage
Make sure you have committed all unsaved works, and then
npx case-police --fix
It will scan all your source files and fix the cases of known names.
Only the word including both uppercase and lowercase will be fixed. (e.g. Github -> GitHub; github and GITHUB will be left untouched).
Use in ESLint
We also provide an ESLint plugin that can be used to lint your codebase.
Flat Config
npm i -D eslint-plugin-case-police
// .eslint.config.js
import pluginCasePolice from "eslint-plugin-case-police";
export default [
...pluginCasePolice.configs.recommended,
];
OR
// .eslint.config.js
import pluginCasePolice from "eslint-plugin-case-police";
export default [
{
name: 'case-police',
files: ['**/*.?([cm])[jt]s?(x)'],
plugins: {
'case-police': pluginCasePolice,
},
rules: {
'case-police/string-check': 'warn',
},
},
]
Legacy Config
Since v2.0.0, we only support the flat config style. If you are using the legacy config, please use the version
1.x.xof the plugin.
npm i -D eslint-plugin-case-police@^1.0.0
// .eslintrc
{
"extends": [
"plugin:case-police/recommended"
]
}
Use in CI
Simply add case-police (without --fix) to your workflow and it will exit with a non-zero code for your CI to catch it.
Specific files
By default it will scan all the text files under the current directory (respects .gitignore), if you want it to check only specific files, you can pass the file paths of glob patterns to it.
npx case-police "**/*.md" path/to/file.html
CLI Options
| Options | Description |
|---|---|
[...globs] |
Files or glob to be checked, if not provided, all the text files will be check |
--fix |
Rewrite changes to file |
-d, --dict <path> |
Custom dictionary JSON, will be merged with original dict |
-p, --presets <presets> |
Filter the default presets, comma separated |
--no-default |
Disable the default dictionary |
--disable <rules> |
Disable rules, comma separated |
--ignore <globs> |
Files or globs to be ignore, comma separated |
Ignores
You can add @case-police-disable in your file to disable the case check for the particular file, or add @case-police-ignore xxx to ignore certain words in that file (use comma to separate mutliple words).
For example:
// @case-police-ignore Uri
console.log(something.Uri.path)
Sponsors
Related Projects
actions-case-police. Use the correct letter case in GitHub issues and pull requests
License
MIT License © 2021 Anthony Fu
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
560,734 starspublic-apis/public-apis
A collective list of free APIs
496,962 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
440,428 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,129 stars