{"id":16280945,"url":"https://github.com/m-sureshraj/eslint-plugin-glob-in-npm-script","last_synced_at":"2026-05-14T12:37:43.843Z","repository":{"id":55409437,"uuid":"324686551","full_name":"m-sureshraj/eslint-plugin-glob-in-npm-script","owner":"m-sureshraj","description":"⭐⭐ ESLint plugin to catch unquoted globs in NPM scripts","archived":false,"fork":false,"pushed_at":"2021-01-13T15:49:15.000Z","size":223,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-19T17:05:48.247Z","etag":null,"topics":["eslint","eslint-plugin","glob"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/m-sureshraj.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-12-27T04:31:06.000Z","updated_at":"2023-08-05T21:50:28.000Z","dependencies_parsed_at":"2022-08-14T23:40:54.647Z","dependency_job_id":null,"html_url":"https://github.com/m-sureshraj/eslint-plugin-glob-in-npm-script","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m-sureshraj%2Feslint-plugin-glob-in-npm-script","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m-sureshraj%2Feslint-plugin-glob-in-npm-script/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m-sureshraj%2Feslint-plugin-glob-in-npm-script/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m-sureshraj%2Feslint-plugin-glob-in-npm-script/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/m-sureshraj","download_url":"https://codeload.github.com/m-sureshraj/eslint-plugin-glob-in-npm-script/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247895757,"owners_count":21014379,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eslint","eslint-plugin","glob"],"created_at":"2024-10-10T19:04:05.702Z","updated_at":"2026-05-14T12:37:43.769Z","avatar_url":"https://github.com/m-sureshraj.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# eslint-plugin-glob-in-npm-script\n\nESLint plugin to catch unquoted [globs](https://en.wikipedia.org/wiki/Glob_(programming)) in NPM scripts.\nOkay, what's wrong with the unquoted globs? It's all about\nhow the shell expands globstar `**`. This [blog post](https://medium.com/@jakubsynowiec/you-should-always-quote-your-globs-in-npm-scripts-621887a2a784) explains why\nwe should always quote the globs in NPM scripts in great detail.\n\n![plugin in action](./media/error-report.png)\n\n## Installation\n\n```\n\u003e npm install -D eslint-plugin-glob-in-npm-script\n```\n**Note**: If you installed ESLint globally (using the `-g` flag) then you must also install `eslint-plugin-glob-in-npm-script` globally.\n\n## Usage\n\nAdd `eslint-plugin-glob-in-npm-script` to the plugin section of your `.eslintrc` file.\nOptionally you can omit the `eslint-plugin-` prefix if you like to keep it short.\n\n```javascript\n{\n    plugins: ['glob-in-npm-script']\n}\n```\n\nThen configure the rule under the `rules` section.\n\n```javascript\n{\n    rules: {\n        'glob-in-npm-script/unquoted-glob': 'error'\n    }\n}\n```\n\nIf you want to ignore certain scripts from linting, pass the script names to the `ignoredScripts` option.\n\n```javascript\nrules: {\n    'glob-in-npm-script/unquoted-glob': ['error', {\n        ignoredScripts: ['script-to-ignore'],\n    }]\n}\n```\n\n**Note**: By default, ESLint won't search `.json` files for linting.\nMake sure to pass the `--ext` flag with the `.json` extension or\na `glob` that matches `.json` files when running ESLint.\n\n```\neslint . --ext .js,.json\neslint './**/*.{js,json}'\n```\n\n## FAQs\n\n#### How does `eslint-plugin-glob-in-npm-script` work?\nThis plugin relies on a package called [is-glob](https://github.com/micromatch/is-glob) to check whether a\nstring is a glob. If it's a glob, then it should have quoted.\nOtherwise, this plugin reports an error.\n\n## Credits\n\n* [eslint-plugin-json-files](https://github.com/kellyselden/eslint-plugin-json-files)\n\n## License\n\nMIT © [Sureshraj](https://github.com/m-sureshraj)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fm-sureshraj%2Feslint-plugin-glob-in-npm-script","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fm-sureshraj%2Feslint-plugin-glob-in-npm-script","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fm-sureshraj%2Feslint-plugin-glob-in-npm-script/lists"}