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.
npm install --save-dev eslint-config-xo
// 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:
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:
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:
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
andsemicolon
preferences easily without messing with the rule config. - Config/rule overrides per files/globs.
- Can open all files with errors at the correct line in your editor. (See the
--open
flag) - 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