Registry /
testing / eslint-plugin-react-intl
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–226 runs
build_error
glibcnode 18–226 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
plugin
✓ plugins: ['react-intl']
✗ use eslint-plugin-react-intl as a rule directly
Load as a plugin in .eslintrc, not a rule.
rule: string-is-marked-for-translation
✓ "react-intl/string-is-marked-for-translation": "error"
✗ "string-is-marked-for-translation": "error"
Rules are namespaced under 'react-intl/'.
rule: is-valid-icu-message-syntax
✓ "react-intl/is-valid-icu-message-syntax": "error"
✗ "is-valid-icu-message-syntax": "error"
Same namespace requirement.
Demonstrates plugin setup in .eslintrc and a React component that triggers the string-is-marked-for-translation rule.
// Install: npm install eslint eslint-plugin-react-intl
// .eslintrc.json
{
"plugins": ["react-intl"],
"rules": {
"react-intl/string-is-marked-for-translation": "error",
"react-intl/is-valid-icu-message-syntax": "error"
}
}
// Example component
import { FormattedMessage } from 'react-intl';
function MyComponent() {
return (
<div>
<FormattedMessage id="greeting" defaultMessage="Hello, {name}!" values={{ name: 'World' }} />
<span>Untranslated string</span> <!-- this will trigger error -->
</div>
);
}
Errors
Common errors & fixes
Error: Cannot find module 'eslint-plugin-react-intl'
Plugin not installed or missing from node_modules.
fixRun: npm install eslint-plugin-react-intl --save-dev
ESLint configuration error: The rule 'string-is-marked-for-translation' is not configured.
Rule used without 'react-intl/' prefix or plugin not specified.
fixEnsure plugin is in 'plugins' array and rules are prefixed: "react-intl/string-is-marked-for-translation": "error"
Parsing error: Unexpected token <
ESLint not configured to parse JSX.
fixAdd parserOptions: { ecmaFeatures: { jsx: true } } to .eslintrc (ESLint 2+) Audit
Dependencies
eslintoptionalPeer dependency; plugin requires ESLint to function.