Oxlint config for @hatena
GitHub 上から直接インストールできます。vX.Y.Z の部分は、利用したいバージョンに置き換えてください。
# pnpm
pnpm add -D oxlint oxlint-tsgolint https://github.com/hatena/eslint-config-hatena.git#vX.Y.Zimport { defineConfig } from "oxlint";
import hatena from "@hatena/oxlint-config";
export default defineConfig({
extends: [hatena.base, hatena.typescript, hatena.react, hatena.next],
});hatena.base: すべての JS/TS プロジェクト向けの基本ルールセットhatena.typescript: TypeScript プロジェクト向けの追加ルールhatena.react: React プロジェクト向けの追加ルールhatena.next: Next.js プロジェクト向けの追加ルール
.vscode/settings.json に以下の設定を追加するとfixable な問題を保存時に修正したり、suggestion をエディタから適用できるようになります。
{
"editor.codeActionsOnSave": {
"source.fixAll.oxc": "always"
},
"oxc.fixKind": "dangerous_fix_or_suggestion"
}また、.vscode/extensions.json を編集して Oxc の拡張機能を推奨拡張機能として指定しておくと良いです。
{
"recommendations": ["oxc.oxc-vscode"]
}prettierconfig はありません- oxlint-config ではそもそも formatter と競合するルールを有効にしてません
- そのため
prettierconfig も不要と判断し、あえて提供していません
- React Compiler 関連のルールは
reactconfig には入れていません- 各々
jsPluginsオプションでeslint-plugin-react-compilerを読み込んでください
- 各々
correctnessカテゴリのルールは全て有効にしています- コードの正確性に関わるルールであり、全てのプロジェクトで有効にすることが望ましいため
- おおよそ
@hatena/eslint-config-hatenaの config と一対一の config を提供してますが、細かい違いがあります- Oxlint でサポートされてないルールがあるため / 完全に同一にするのは運用上大変なため / Oxlint にだけあるルールがあるため
- ベストエフォートで同期されると思ってください