Square's custom ESLint plugin that consolidates frontend linting rules and configurations including base, Ember, React, strict, and TypeScript configs. Current stable version is 26.0.1, requires Node ^18.0.0 || >=20.0.0 and ESLint >= 8.40.0. Ships TypeScript types, integrates eslint-plugin-import, eslint-plugin-unicorn, eslint-plugin-react, eslint-plugin-react-hooks, eslint-plugin-jsx-a11y, prettier, and more. Not recommended for public use outside Square. Breaking changes in v26: dropped Node v16 support; v24 added warning on unused ESLint disable directives in base config.
npm install eslint-plugin-squareNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Shows how to install, configure the base preset in a .eslintrc.cjs file, and set up npm-run-all scripts.
Upgrade Node to 18 or 20+.
Use --report-unused-disable-directives to check, or disable with 'no-unused-disable-directives': 'off'.
Ensure you're using eslint-plugin-square v25+ if you depend on Unicorn rules.
If using externally, pin to a specific version and expect breaking changes.
Rename to .eslintrc.cjs or use ESM config format (eslint.config.js with export default).
Run 'yarn add --dev eslint-plugin-square' or check node_modules.
Update eslint-plugin-square to v25+ or pin eslint-plugin-unicorn to compatible version.
Use dynamic import() or switch to ESM (eslint.config.js) with import statement.