{"id":17472547,"url":"https://github.com/shinnn/eslint-config","last_synced_at":"2025-04-04T00:31:31.767Z","repository":{"id":31374787,"uuid":"34937806","full_name":"shinnn/eslint-config","owner":"shinnn","description":"shinnn's ESLint config for both client-side and Node.js-based projects","archived":false,"fork":false,"pushed_at":"2019-07-07T19:21:04.000Z","size":521,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-22T10:42:23.612Z","etag":null,"topics":["autofix","coding-style","ecmascript","eslint","eslint-config","javascript","jxa","linter","nodejs","preset","rules","settings","sharable-config"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shinnn.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":"2015-05-02T06:19:37.000Z","updated_at":"2024-07-01T19:25:20.000Z","dependencies_parsed_at":"2022-09-09T10:20:34.154Z","dependency_job_id":null,"html_url":"https://github.com/shinnn/eslint-config","commit_stats":null,"previous_names":["shinnn/eslintrc"],"tags_count":93,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shinnn%2Feslint-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shinnn%2Feslint-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shinnn%2Feslint-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shinnn%2Feslint-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shinnn","download_url":"https://codeload.github.com/shinnn/eslint-config/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246586050,"owners_count":20801026,"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":["autofix","coding-style","ecmascript","eslint","eslint-config","javascript","jxa","linter","nodejs","preset","rules","settings","sharable-config"],"created_at":"2024-10-18T17:26:30.435Z","updated_at":"2025-04-04T00:31:31.479Z","avatar_url":"https://github.com/shinnn.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @shinnn/eslint-config\n\n[![npm version](https://img.shields.io/npm/v/@shinnn%2feslint-config.svg)](https://www.npmjs.com/package/@shinnn/eslint-config)\n[![Build Status](https://travis-ci.com/shinnn/eslint-config.svg?branch=master)](https://travis-ci.com/shinnn/eslint-config)\n[![codecov](https://codecov.io/gh/shinnn/eslint-config/branch/master/graph/badge.svg)](https://codecov.io/gh/shinnn/eslint-config)\n\n[shinnn](https://github.com/shinnn)'s [ESLint](https://eslint.org/) [sharable config](https://eslint.org/docs/developer-guide/shareable-configs.html)\n\n## Features\n\n* Enforce tab indents to save file size\n* Support [ECMAScript 2019](http://2ality.com/2018/02/ecmascript-2019.html) features for example [optional `catch` binding](https://github.com/tc39/proposal-optional-catch-binding), and more [experimental](https://github.com/tc39/proposals) ones when [babel-eslint](https://www.npmjs.com/package/babel-eslint) is installed\n* [Target](https://eslint.org/docs/user-guide/command-line-interface#--ext) `.cjs` and `.mjs` file extension by default to support [ECMAScript modules](https://nodejs.org/api/esm.html)\n* [Automatically fix errors](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) without explicitly passing a `--fix` flag\n  * On [CI](https://docs.travis-ci.com/user/getting-started) [environments](https://www.appveyor.com/), this feature is disabled in order to encourage fixing code locally.\n  * Users still can manually disable it with `--no-fix` flag.\n* Automatically ignore [generated files](https://github.com/shinnn/eslint-config/blob/v6.10.2/index.js#L10-L18), for example paths under `coverage/`, `tmp/` and `dist/`\n* Use a beautiful [codeframe](https://eslint.org/docs/user-guide/formatters/#codeframe) formatter by default\n* [Cache](https://eslint.org/docs/user-guide/command-line-interface#caching) results by default to operate only on the changed files\n* Allow CLI-friendly [`process.exit()`](https://nodejs.org/api/process.html#process_process_exit_code) to be used *only* inside [executables](https://docs.npmjs.com/files/package.json#bin)\n* Optional [Svelte](https://svelte.dev/) support\n\n## Installation\n\n[Install](https://docs.npmjs.com/cli/install) [`eslint`](https://www.npmjs.com/package/eslint) and this package with [npm](https://docs.npmjs.com/about-npm/).\n\n```\nnpm install --save-dev eslint @shinnn/eslint-config\n```\n\nThen add the following configuration to your project's [`package.json`](https://docs.npmjs.com/files/package.json).\n\n```json\n\"eslintConfig\": {\n  \"extends\": \"@shinnn\"\n}\n```\n\n### Optional setups\n\n#### [babel-eslint](https://github.com/sveltejs/svelte) utilization\n\nWhen [`babel-eslint`](https://github.com/babel/babel-eslint) is installed, this config automatically uses it as a [parser](https://eslint.org/docs/user-guide/configuring#specifying-parser). There is no need to add `\"parser\": \"babel-eslint\"` to the `package.json` explicitly.\n\n```\nnpm install --save-dev babel-eslint\n```\n\n`babel-eslint` lets ESLint parse experimental ECMAScript syntax the default parser doesn't support, for example [class fields](https://github.com/tc39/proposal-class-fields) and [`BigInt`](https://github.com/tc39/proposal-bigint).\n\n\n#### [Svelte](https://github.com/sveltejs/svelte) support\n\nWhen [`eslint-plugin-svelte3`](https://github.com/sveltejs/eslint-plugin-svelte3) is installed, this config also makes ESLint validate `.svelte` files.\n\n```\nnpm install --save-dev eslint-plugin-svelte3\n```\n\n## CLI\n\n```sh\n# No need to explicitly add `--cache`, `--cache-location`, `--ext`, `--fix` and `--format` flags\n$ eslint .\n```\n\n## API\n\n```javascript\nconst {CLIEngine} = require('eslint');\n\nconst cli = new CLIEngine({\n  // For programmatic usage via API and build tool integrations like Webpack eslint-loader,\n  // options for example `fix: true` and `cache: true` are still needed to set them explicitly.\n});\ncli.executeOnText('var foo=true;'); //=\u003e {results: [ ... ], errorCount: ... }\n```\n\n## License\n\n[ISC License](./LICENSE) © 2017 - 2019 Watanabe Shinnosuke\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshinnn%2Feslint-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshinnn%2Feslint-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshinnn%2Feslint-config/lists"}