Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ESLint 設定を追加したい #105

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/codeowners
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
* @timedia/styleguide

/ecmascript @timedia/styleguide-ecmascript
/ruby @timedia/styleguide-ruby
4 changes: 4 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
ecmascript:
- ecmascript/**

ruby:
- ruby/**

others:
- '!ecmascript/**'
- '!ruby/**'
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,4 @@
ecmascript/**/node_modules
ecmascript/package-lock.json
ecmascript/yarn.lock
ruby/Gemfile.lock
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,5 @@
## 対応言語と Linter/Formatter の一覧
- [Ruby](ruby/README.md)
- RuboCop
- [ECMAScript/TypeScript](ecmascript/README.md)
- ESLint
4 changes: 4 additions & 0 deletions ecmascript/.eslintrc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
env:
node: true
extends:
- "@timedia"
12 changes: 12 additions & 0 deletions ecmascript/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# ECMAScript/TypeScript 用 Linter/Formatter 設定

## Linter/Formatter
- ESLint

### 設定ファイルのバリエーション
#### ESLint
- [ECMAScript Base](./packages/eslint-config/index.js)
- [TypeScript Base](./packages/eslint-config/typescript.js)

## 使い方
TODO
10 changes: 10 additions & 0 deletions ecmascript/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"private": true,
"workspaces": [
"packages/*"
],
"devDependencies": {
"@timedia/eslint-config": "*",
"eslint": "^8.17.0"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/*
* eslint-plugin-eslint-comments パッケージで定義されたルールを有効化/無効化する
*/
module.exports = {
extends: [
"plugin:eslint-comments/recommended",
],
};
8 changes: 8 additions & 0 deletions ecmascript/packages/eslint-config/configs/eslint.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/*
* ESLint 本体に定義されたルールを有効化/無効化する
*/
module.exports = {
extends: [
"eslint:recommended",
],
};
14 changes: 14 additions & 0 deletions ecmascript/packages/eslint-config/configs/typescript-eslint.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/*
* @typescript-eslint/eslint-plugin パッケージで定義されたルールを有効化/無効化する
*/
module.exports = {
extends: [
"plugin:@typescript-eslint/recommended",
],
parser: "@typescript-eslint/parser",
parserOptions: {
"ecmaVersion": "latest",
"sourceType": "module",
},
};

9 changes: 9 additions & 0 deletions ecmascript/packages/eslint-config/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
/*
* TypeScript を使わない/使えないプロジェクト向けのルールセット
*/
module.exports = {
extends: [
"./configs/eslint.js",
"./configs/eslint-comments.js",
],
};
29 changes: 29 additions & 0 deletions ecmascript/packages/eslint-config/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"name": "@timedia/eslint-config",
"version": "0.1.0",
"description": "The default ESLint configuration for TIMEINTERMEDIA, Inc.",
"main": "index.js",
"repository": "https://github.com/timedia/styleguide.git",
"author": "Ryo MAEDA",
"devDependencies": {
"@typescript-eslint/eslint-plugin": "^5.27.0",
"@typescript-eslint/parser": "^5.27.0",
"eslint": "^8.17.0",
"eslint-plugin-eslint-comments": "^3.2.0",
"typescript": "^4.7.3"
},
"peerDependencies": {
"@typescript-eslint/eslint-plugin": "^5.27.0",
"@typescript-eslint/parser": "^5.27.0",
"eslint": "^8.17.0",
"eslint-plugin-eslint-comments": "^3.2.0"
},
"peerDependenciesMeta": {
"@typescript-eslint/eslint-plugin": {
"optional": true
},
"@typescript-eslint/parser": {
"optional": true
}
}
}
10 changes: 10 additions & 0 deletions ecmascript/packages/eslint-config/typescript.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
/*
* TypeScript を使うプロジェクト向けのルールセット
*/
module.exports = {
extends: [
"./configs/eslint.js",
"./configs/eslint-comments.js",
"./configs/typescript-eslint.js",
],
};
1 change: 1 addition & 0 deletions ruby/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
- RuboCop

### 設定ファイルのバリエーション
#### RuboCop
- [Base](./rubocop/config/base.yml)
- [Rails](./rubocop/config/rails.yml)
- [RSpec](./rubocop/config/rspec.yml)
Expand Down