{"id":19782,"library":"eslint-plugin-i18n","title":"eslint-plugin-i18n","description":"ESLint plugin providing lint rules to prevent usage of non-Latin characters (Chinese, Greek, Japanese, Korean, Russian, Thai) in source code, helping enforce internationalization best practices. Current stable version is 2.4.0. Release cadence is irregular. Key differentiators: simple targeted rules for specific character sets, supports JSX, template literals, and configurable exclusions for identifiers, comments, function arguments, and module imports.","status":"active","version":"2.4.0","language":"javascript","source_language":"en","source_url":"https://github.com/chejen/eslint-plugin-i18n","tags":["javascript","eslint","eslintplugin","eslint-plugin","i18n","internationalization","l10n","localization"],"install":[{"cmd":"npm install eslint-plugin-i18n","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-plugin-i18n","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-plugin-i18n","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"ESLint plugins are referenced without the 'eslint-plugin-' prefix.","wrong":"plugins: ['eslint-plugin-i18n']","symbol":"plugin","correct":"plugins: ['i18n']"},{"note":"Use severity strings ('error', 'warn', 'off') instead of numbers (deprecated in older ESLint).","wrong":"\"i18n/no-chinese-character\": 2","symbol":"rules","correct":"\"i18n/no-chinese-character\": \"error\""},{"note":"Option is 'excludeIdentifier' (singular), not 'excludeIdentifiers'. Check per-rule docs.","wrong":"\"i18n/no-chinese-character\": [\"error\", { \"excludeIdentifiers\": true }]","symbol":"rule config","correct":"\"i18n/no-chinese-character\": [\"error\", { \"excludeIdentifier\": true }]"}],"quickstart":{"code":"// Install: npm install --save-dev eslint eslint-plugin-i18n\n// .eslintrc.json\n{\n  \"plugins\": [\"i18n\"],\n  \"rules\": {\n    \"i18n/no-chinese-character\": \"error\",\n    \"i18n/no-russian-character\": \"warn\"\n  }\n}\n\n// test.js\nconst greeting = '你好'; // ESLint will error: no-chinese-character","lang":"javascript","description":"Shows how to install and configure eslint-plugin-i18n to prevent Chinese and Russian characters in source code."},"warnings":[{"fix":"Upgrade Node.js to version 10 or higher.","message":"v2.0.0 dropped support for Node < 10","severity":"breaking","affected_versions":"<10"},{"fix":"Use string severity: 'off', 'warn', 'error'.","message":"Using numeric severity (0,1,2) in ESLint rules is deprecated in ESLint >= 9","severity":"deprecated","affected_versions":">=1.0.0"},{"fix":"Refer to docs/rules/<rule-name>.md for exact option names.","message":"Rule options may differ between rules; check each rule's documentation for available options.","severity":"gotcha","affected_versions":">=2.0.0"}],"env_vars":null,"search_vec":"'2.4.0':36 'argument':61 'best':30 'cadenc':38 'charact':17,48 'chines':18 'code':26 'comment':59 'configur':55 'current':32 'differenti':42 'enforc':28 'eslint':2,5,66,69 'eslint-plugin':68 'eslint-plugin-i18n':1 'eslintplugin':67 'exclus':56 'function':60 'greek':19 'help':27 'i18n':4,71 'identifi':58 'import':64 'internation':29,72 'irregular':40 'japanes':20 'javascript':65 'jsx':51 'key':41 'korean':21 'l10n':73 'latin':16 'lint':8 'liter':53 'local':74 'modul':63 'non':15 'non-latin':14 'plugin':3,6,70 'practic':31 'prevent':11 'provid':7 'releas':37 'rule':9,45 'russian':22 'set':49 'simpl':43 'sourc':25 'specif':47 'stabl':33 'support':50 'target':44 'templat':52 'thai':23 'usag':12 'version':34","created_at":"2026-04-25T11:19:37.388705+00:00","updated_at":"2026-04-25T11:19:37.388705+00:00","problems":[{"fix":"Run 'npm install --save-dev eslint-plugin-i18n'.","cause":"Plugin not installed or missing from node_modules.","error":"ESLint couldn't find the plugin \"eslint-plugin-i18n\"."},{"fix":"Ensure eslint-plugin-i18n is installed in the same project as ESLint.","cause":"Plugin not installed or ESLint can't resolve it.","error":"Error: Failed to load plugin 'i18n': Cannot find module 'eslint-plugin-i18n'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/chejen/eslint-plugin-i18n","docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/eslint-plugin-i18n","openapi_spec":null,"status_page":null,"smithery":null,"categories":["testing","http-networking"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-17","next_check":"2026-07-24","install_tag":null}}