ESLint shareable config for XO
npm install eslint-config-xo> ESLint shareable config for XO
This is for advanced users. You probably want to use XO directly.
See eslint-plugin-unicorn for some additional useful rules.
Use the XO issue tracker instead of this one.
``sh`
npm install --save-dev eslint-config-xo
`js
// eslint.config.js
import xo from 'eslint-config-xo';
export default [
...xo,
];
`
This package also exposes eslint-config-xo/browser if you're in the browser:
`js
import xoBrowser from 'eslint-config-xo/browser';
export default [
...xoBrowser,
];
`
This package also exposes eslint-config-xo/space if you're in favor of 2-space indent:
`js
import xoSpace from 'eslint-config-xo/space';
export default [
...xoSpace,
];
`
This package also exposes eslint-config-xo/space/browser if you're in favor of 2-space indent and in browser:
`js
import xoSpaceBrowser from 'eslint-config-xo/space/browser';
export default [
...xoSpaceBrowser,
];
`
XO is an ESLint wrapper with great defaults.
Here are some reason why you should use the XO CLI instead of this config:
- XO comes bundled with this config.
- Beautiful output.
- Bundles many useful plugins, like eslint-plugin-unicorn, eslint-plugin-import, eslint-plugin-ava, and more.
- No need to specify file paths to lint. It will lint all JS files except commonly ignored paths.
- Super simple to add XO to a project with $ npm init xo.
- Specify indent and semicolon preferences easily without messing with the rule config.--open` flag)
- Config/rule overrides per files/globs.
- Can open all files with errors at the correct line in your editor. (See the
- The editor plugins are IMHO better than the ESLint ones. (Subjective)
tl;dr You miss out on a lot by just using this config.
- eslint-config-xo-space - ESLint shareable config for XO with 2-space indent
- eslint-config-xo-typescript - ESLint shareable config for TypeScript to be used with this config
- eslint-config-xo-react - ESLint shareable config for React to be used with this config