npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

eslint-ja-proxy

v0.1.0

Published

ESLintのエラーメッセージを日本語化するプロキシ

Downloads

5

Readme

eslint-ja-proxy

CI GitHub Workflow Status npm version license: MIT

ESLint のエラーメッセージを 日本語にします。
JetBrains(WebStorm/IntelliJ)、VS Code、CLI/CI など ESLint を使う場所ならどこでも動きます。


これは何?

ESLint を薄くラップして、出力メッセージだけ日本語に置き換えるツールです。ルールの動きや件数・位置情報は変えません。未対応のものは 英語のまま出ます(壊れません)。


対応環境

  • Node.js: >=18
  • ESLint: ^8.57.0 || ^9
  • エディタ: JetBrains, VS Code, Neovim/LSP, ほか

インストール

npm i -D eslint eslint-ja-proxy

使い方(かんたん)

JetBrains(WebStorm/IntelliJ)

  1. IDE設定 → Languages & Frameworks > JavaScript > Code Quality Tools > ESLint
  2. Manual ESLint configuration を選ぶ
  3. ESLint packagenode_modules/eslint-ja-proxy を指定 → Problems に日本語メッセージが出ます

VS Code

おすすめ:npm エイリアスeslint を置き換えます。

{
  "devDependencies": {
    "eslint": "npm:eslint-ja-proxy@^0.1.0"
  }
}

既存の eslint を残したい場合は、eslint.nodePath を別フォルダに向けて、そこへ本パッケージを eslint 名で入れてください。

CLI / CI

付属のラッパー CLI を使います。

npx eslint-ja "src/**/*.{ts,js,html}"

または Node の --require で常時パッチ:

node -r eslint-ja-proxy/register node_modules/.bin/eslint .

どこが日本語になる?

  • 仕組みruleId + messageId (+ data) を鍵に、対応する日本語テンプレへ置き換えます
  • 辞書core(ESLint本体) / angular(@angular-eslint) / typescript(@typescript-eslint)を同梱
  • 未訳:英語のまま表示(あとから増やせます)

必要なら有効化する辞書を指定できます(省略時は自動)。

{
  "eslintJaProxy": { "DICT": "core,angular,typescript" }
}

仕組み(ざっくり図)

[ESLint 実行]
   ↓
[結果 results[].messages[] を取得]
   ↓  messageId / data を見て訳文に置換(なければ英語のまま)
   ↓
[IDE/CLI へそのまま返す]  ← 位置・件数・ruleId は変更しない

バージョン違いへの対応(大事)

プラグインの更新で messageId が増えたり変わることがあります。そこで:

  • 共通辞書 + 追加辞書(バージョン範囲ごと) を合成します
  • 例)@angular-eslint>=18 <20 のときだけ overrides/angular-18-19.json を上書き読込
  • 合わない場合は 英語にフォールバック(壊れません)

トラブル時のチェック

  • JetBrains:Manual になっているか? ESLint packageeslint-ja-proxy か?
  • VS Code:node_modules/eslintこのパッケージになっているか?(npm エイリアス)
  • CI:npx eslint-ja を呼んでいるか?

よくある質問(FAQ)

Q. ルールの動きや自動修正は変わりますか?
A. 変わりません。メッセージ文字列だけを置き換えます。

Q. JetBrains専用ですか?
A. いいえ。VS Code や CLI でも使えます。

Q. 英語のまま出ることがある?
A. 未訳のときは英語になります。使いながら徐々に辞書を増やせます。


コントリビュート方法(歓迎!)

  1. 使ってみて、英語のまま出たメッセージを見つける
  2. dict/ の該当プラグイン(例:angular.json)に ruleId > messageId で追記
  3. data{name} など)はテンプレ {name} に置き換え
  4. 簡単なテストを追加(1つのサンプルでヒットすればOK)
  5. PR を送ってください!

自動で未訳を集める仕組み(JSONL 追記)もあります。詳しくは AGENTS.md を参照。


ライセンス

MIT