You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Enforce strict code style. Never discuss code style on a pull request again!
14
-
15
-
No decision-making. No `.eslintrc` or `.jshintrc` to manage. It just works!
13
+
Opionated but configurable ESLint wrapper with lots of goodies included. Enforces strict and readable code. Never discuss code style on a pull request again! No decision-making. No `.eslintrc` or `.jshintrc` to manage. It just works!
16
14
17
15
Uses [ESLint](http://eslint.org) underneath, so issues regarding rules should be opened over [there](https://github.com/eslint/eslint/issues).
18
16
19
-
JSX is supported by default, but you'll need [eslint-config-xo-react](https://github.com/sindresorhus/eslint-config-xo-react#use-with-xo) for React specific linting.
17
+
*JSX is supported by default, but you'll need [eslint-config-xo-react](https://github.com/sindresorhus/eslint-config-xo-react#use-with-xo) for React specific linting.*
- Zero-config, but [configurable when needed](#config).
26
+
- Enforces readable code, because you read more code than you write.
27
+
- No need to specify file paths to lint as it lints all JS files except for [commonly ignored paths](#ignores).
28
+
-[Config overrides per files/globs.](#config-overrides)*(ESLint doesn't support this)*
29
+
- Includes many useful ESLint plugins, like [`unicorn`](https://github.com/sindresorhus/eslint-plugin-unicorn), [`import`](https://github.com/benmosher/eslint-plugin-import), [`ava`](https://github.com/avajs/eslint-plugin-ava), and more.
30
+
- Super simple to add XO to a project with `$ xo --init`.
31
+
- Fix many issues automagically with `$ xo --fix`.
32
+
- Open all files with errors at the correct line in your editor with `$ xo --open`.
33
+
- Specify [indent](#indent) and [semicolon](#semicolon) preferences easily without messing with the rule config.
34
+
- Great [editor plugins](#editor-plugins).
20
35
21
36
22
37
## Install
@@ -73,7 +88,7 @@ $ xo --help
73
88
*Any of these can be [overridden](#rules) if necessary.*
74
89
75
90
- Tab indentation *[(or space)](#space)*
76
-
- Semicolons
91
+
- Semicolons*[(or not)](#semicolon)*
77
92
- Single-quotes
78
93
- No unused variables
79
94
- Space after keyword `if (condition) {}`
@@ -97,7 +112,7 @@ Simply run `$ xo --init` (with any options) to add XO to your package.json or cr
97
112
"test": "ava"
98
113
},
99
114
"devDependencies": {
100
-
"ava": "^0.11.0"
115
+
"ava": "^0.16.0"
101
116
}
102
117
}
103
118
```
@@ -111,8 +126,8 @@ Simply run `$ xo --init` (with any options) to add XO to your package.json or cr
0 commit comments