.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / prettier-eslint / README.md
1 # prettier-eslint
2
3 Formats your JavaScript using [`prettier`][prettier] followed by [`eslint --fix`][eslint]
4
5 [![Build Status][build-badge]][build]
6 [![Code Coverage][coverage-badge]][coverage]
7 [![version][version-badge]][package] [![downloads][downloads-badge]][npm-stat]
8 [![MIT License][license-badge]][license]
9
10 [![All Contributors](https://img.shields.io/badge/all_contributors-26-orange.svg?style=flat-square)](#contributors-)
11 [![PRs Welcome][prs-badge]][prs] [![Donate][donate-badge]][donate]
12 [![Code of Conduct][coc-badge]][coc] [![Roadmap][roadmap-badge]][roadmap]
13 [![Examples][examples-badge]][examples]
14
15 [![Watch on GitHub][github-watch-badge]][github-watch]
16 [![Star on GitHub][github-star-badge]][github-star]
17 [![Tweet][twitter-badge]][twitter]
18
19 ## The problem
20
21 The [`fix`][fix] feature of [`eslint`][eslint] is pretty great and can
22 auto-format/fix much of your code according to your ESLint config.
23 [`prettier`][prettier] is a more powerful automatic formatter. One of the nice
24 things about prettier is how opinionated it is. Unfortunately, it's not
25 opinionated enough and/or some opinions differ from my own. So after prettier
26 formats the code, I start getting linting errors.
27
28 ## This solution
29
30 This formats your code via `prettier`, and then passes the result of that to
31 `eslint --fix`. This way you can get the benefits of `prettier`'s superior
32 formatting capabilities, but also benefit from the configuration capabilities of
33 `eslint`.
34
35 > For files with an extension of `.css`, `.less`, `.scss`, or `.json` this only
36 > runs `prettier` since `eslint` cannot process those.
37
38 ## Installation
39
40 This module is distributed via [npm][npm] which is bundled with [node][node] and
41 should be installed as one of your project's `devDependencies`:
42
43 ```
44 npm install --save-dev prettier-eslint
45 ```
46
47 ## Usage
48
49 ### Example
50
51 ```javascript
52 const format = require("prettier-eslint");
53
54 // notice, no semicolon in the original text
55 const sourceCode = "const {foo} = bar";
56
57 const options = {
58   text: sourceCode,
59   eslintConfig: {
60     parserOptions: {
61       ecmaVersion: 7,
62     },
63     rules: {
64       semi: ["error", "never"],
65     },
66   },
67   prettierOptions: {
68     bracketSpacing: true,
69   },
70   fallbackPrettierOptions: {
71     singleQuote: false,
72   },
73 };
74
75 const formatted = format(options);
76
77 // notice no semicolon in the formatted text
78 formatted; // const { foo } = bar
79 ```
80
81 ### options
82
83 #### text (String)
84
85 The source code to format.
86
87 #### filePath (?String)
88
89 The path of the file being formatted can be used to override `eslintConfig`
90 (eslint will be used to find the relevant config for the file).
91
92 #### eslintConfig (?Object)
93
94 The config to use for formatting with ESLint. Can be overridden with `filePath`.
95
96 #### prettierOptions (?Object)
97
98 The options to pass for formatting with `prettier`. If not provided,
99 `prettier-eslint` will attempt to create the options based on the `eslintConfig`
100 (whether that's provided or derived via `filePath`). You can also provide _some_
101 of the options and have the remaining options derived via your eslint config.
102 This is useful for options like `parser`.
103
104 **NOTE:** these options _override_ the eslint config. If you want the fallback
105 options to be used only in the case that the rule cannot be inferred from
106 eslint, see "fallbackPrettierOptions" below.
107
108 #### fallbackPrettierOptions (?Object)
109
110 The options to pass for formatting with `prettier` if `prettier-eslint` is not
111 able to create the options based on the the `eslintConfig` (whether that's
112 provided or derived via `filePath`). These options will only be used in the case
113 that the corresponding eslint rule cannot be found and the prettier option has
114 not been manually defined in `prettierOptions`. If the fallback is not given,
115 `prettier-eslint` will just use the default `prettier` value in this scenario.
116
117 #### logLevel (?Enum: ['trace', 'debug', 'info', 'warn', 'error', 'silent'])
118
119 `prettier-eslint` does quite a bit of logging if you want it to. Pass this to
120 set the number of logs you want to see. Default is `process.env.LOG_LEVEL || 'warn'`.
121
122 #### eslintPath (?String)
123
124 By default, `prettier-eslint` will try to find the relevant `eslint` (and
125 `prettier`) module based on the `filePath`. If it cannot find one, then it will
126 use the version that `prettier-eslint` has installed locally. If you'd like to
127 specify a path to the `eslint` module you would like to have `prettier-eslint`
128 use, then you can provide the full path to it with the `eslintPath` option.
129
130 #### prettierPath (?String)
131
132 This is basically the same as `eslintPath` except for the `prettier` module.
133
134 #### prettierLast (?Boolean)
135
136 By default, `prettier-eslint` will run `prettier` first, then `eslint --fix`.
137 This is great if you want to use `prettier`, but override some of the styles you
138 don't like using `eslint --fix`.
139
140 An alternative approach is to use different tools for different concerns. If you
141 provide `prettierLast: true`, it will run `eslint --fix` first, then `prettier`.
142 This allows you to use `eslint` to look for bugs and/or bad practices, and use
143 `prettier` to enforce code style.
144
145 ### throws
146
147 `prettier-eslint` will **only** propagate _parsing_ errors when either `prettier` or `eslint` fails. In addition to propagating the errors, it will also log a specific message indicating what it was doing at the time of the failure.
148
149 **Note:** `prettier-eslint` will not show any message regarding broken rules in either `prettier` or `eslint`.
150
151 ## Technical details
152
153 > Code ➡️ prettier ➡️ eslint --fix ➡️ Formatted Code ✨
154
155 ### inferring prettierOptions via eslintConfig
156
157 The `eslintConfig` and `prettierOptions` can each be provided as an argument. If
158 the `eslintConfig` is not provided, then `prettier-eslint` will look for them
159 based on the `fileName` (if no `fileName` is provided then it uses
160 `process.cwd()`). Once `prettier-eslint` has found the `eslintConfig`, the
161 `prettierOptions` are inferred from the `eslintConfig`. If some of the
162 `prettierOptions` have already been provided, then `prettier-eslint` will only
163 infer the remaining options. This inference happens in `src/utils.js`.
164
165 **An important thing to note** about this inference is that it may not support
166 your specific eslint config. So you'll want to check `src/utils.js` to see how
167 the inference is done for each option (what rule(s) are referenced, etc.) and
168 [make a pull request][prs] if your configuration is supported.
169
170 **Defaults** if you have all of the relevant ESLint rules disabled (or have
171 ESLint disabled entirely via `/* eslint-disable */` then prettier options will
172 fall back to the `prettier` defaults:
173
174 ```javascript
175 {
176   printWidth: 80,
177   tabWidth: 2,
178   singleQuote: false,
179   trailingComma: 'none',
180   bracketSpacing: true,
181   semi: true,
182   useTabs: false,
183   // prettier-eslint doesn't currently support
184   // inferring these two (Pull Requests welcome):
185   parser: 'babylon',
186   jsxBracketSameLine: false,
187 }
188 ```
189
190 ## Troubleshooting
191
192 ### debugging issues
193
194 There is a lot of logging available with `prettier-eslint`. When debugging, you
195 can use one of the
196 [`logLevel`](#loglevel-enum-trace-debug-info-warn-error-silent)s to get a better
197 idea of what's going on. If you're using `prettier-eslint-cli` then you can use
198 the `--log-level trace`, if you're using [the Atom plugin][atom-plugin], then
199 you can [open the developer tools][atom-dev-tools] and enter:
200 `process.env.LOG_LEVEL = 'trace'` in the console, then run the format. You'll
201 see a bunch of logs that should help you determine whether the problem is
202 `prettier`, `eslint --fix`, how `prettier-eslint` infers your `prettier`
203 options, or any number of other things. You will be asked to do this before
204 filing issues, so please do :smile:
205
206 > NOTE: When you're doing this, it's recommended that you only run this on a
207 > single file because there are a LOT of logs :)
208
209 ### eslint-disable-line
210
211 While using `// eslint-disable-line`, sometimes you may get linting errors after
212 the code has been processed by this module. That is because `prettier` changes
213 this:
214
215 ```js
216 // prettier-ignore
217 if (x) { // eslint-disable-line
218 }
219 ```
220
221 to this:
222
223 ```js
224 if (x) {
225   // eslint-disable-line
226 }
227 ```
228
229 And the `eslint --fix` wont change it back. You can notice that `// eslint-disable-line` has moved to a new line. To work around this issue, you can
230 use `//eslint-disable-next-line` instead of `// eslint-disable-line` like this:
231
232 ```js
233 // eslint-disable-next-line
234 if (x) {
235 }
236 ```
237
238 ## Inspiration
239
240 - [`prettier`][prettier]
241 - [`eslint`][eslint]
242
243 ## Other Solutions
244
245 None that I'm aware of. Feel free to file a PR if you know of any other
246 solutions.
247
248 ## Related
249
250 - [`prettier-eslint-cli`](https://github.com/prettier/prettier-eslint-cli) -
251   Command Line Interface
252 - [`prettier-atom`][atom-plugin] - Atom plugin (check the "ESlint integration"
253   checkbox in settings)
254 - [`prettier-vscode`][vscode-plugin] - Visual Studio Code plugin (set
255   `prettier.eslintIntegration: true` in settings)
256 - [`eslint-plugin-prettier`](https://github.com/not-an-aardvark/eslint-plugin-prettier) -
257   ESLint plugin. While prettier-eslint uses `eslint --fix` to change the output of `prettier`, eslint-plugin-prettier keeps the `prettier` output as-is and integrates it with the regular ESLint workflow.
258 - [`prettier-eslint-webpack-plugin`](https://github.com/danielterwiel/prettier-eslint-webpack-plugin) -
259   Prettier ESlint Webpack Plugin
260
261 ## Contributors
262
263 Thanks goes to these people ([emoji key][emojis]):
264
265 <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
266 <!-- prettier-ignore-start -->
267 <!-- markdownlint-disable -->
268 <table>
269   <tr>
270     <td align="center"><a href="https://kentcdodds.com"><img src="https://avatars.githubusercontent.com/u/1500684?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Kent C. Dodds</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=kentcdodds" title="Code">💻</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=kentcdodds" title="Documentation">📖</a> <a href="#infra-kentcdodds" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=kentcdodds" title="Tests">⚠️</a></td>
271     <td align="center"><a href="http://gyandeeps.com"><img src="https://avatars.githubusercontent.com/u/5554486?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Gyandeep Singh</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/pulls?q=is%3Apr+reviewed-by%3Agyandeeps" title="Reviewed Pull Requests">👀</a></td>
272     <td align="center"><a href="https://github.com/exdeniz"><img src="https://avatars.githubusercontent.com/u/682584?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Igor Pnev</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/issues?q=author%3Aexdeniz" title="Bug reports">🐛</a></td>
273     <td align="center"><a href="https://demoneaux.github.io/"><img src="https://avatars.githubusercontent.com/u/813865?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Benjamin Tan</b></sub></a><br /><a href="#question-demoneaux" title="Answering Questions">💬</a> <a href="https://github.com/prettier/prettier-eslint/pulls?q=is%3Apr+reviewed-by%3Ademoneaux" title="Reviewed Pull Requests">👀</a></td>
274     <td align="center"><a href="https://ericmccormick.io"><img src="https://avatars.githubusercontent.com/u/622118?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Eric McCormick</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=edm00se" title="Code">💻</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=edm00se" title="Documentation">📖</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=edm00se" title="Tests">⚠️</a></td>
275     <td align="center"><a href="https://github.com/lydell"><img src="https://avatars.githubusercontent.com/u/2142817?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Simon Lydell</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=lydell" title="Documentation">📖</a></td>
276     <td align="center"><a href="https://github.com/tommck"><img src="https://avatars0.githubusercontent.com/u/981957?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Tom McKearney</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=tommck" title="Documentation">📖</a> <a href="#example-tommck" title="Examples">💡</a></td>
277   </tr>
278   <tr>
279     <td align="center"><a href="https://github.com/PAkerstrand"><img src="https://avatars.githubusercontent.com/u/463105?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Patrik Åkerstrand</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=PAkerstrand" title="Code">💻</a></td>
280     <td align="center"><a href="https://twitter.com/loklaan"><img src="https://avatars.githubusercontent.com/u/1560301?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Lochlan Bunn</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=loklaan" title="Code">💻</a></td>
281     <td align="center"><a href="https://github.com/danielterwiel"><img src="https://avatars.githubusercontent.com/u/25886902?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Daniël Terwiel</b></sub></a><br /><a href="#plugin-danielterwiel" title="Plugin/utility libraries">🔌</a> <a href="#tool-danielterwiel" title="Tools">🔧</a></td>
282     <td align="center"><a href="https://robinmalfait.com"><img src="https://avatars1.githubusercontent.com/u/1834413?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Robin Malfait</b></sub></a><br /><a href="#tool-RobinMalfait" title="Tools">🔧</a></td>
283     <td align="center"><a href="http://mgmcdermott.com"><img src="https://avatars0.githubusercontent.com/u/8161781?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Michael McDermott</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=mgmcdermott" title="Code">💻</a></td>
284     <td align="center"><a href="http://sheerun.net"><img src="https://avatars3.githubusercontent.com/u/292365?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Adam Stankiewicz</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=sheerun" title="Code">💻</a></td>
285     <td align="center"><a href="http://www.stephenjohnsorensen.com/"><img src="https://avatars3.githubusercontent.com/u/487068?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Stephen John Sorensen</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=spudly" title="Code">💻</a></td>
286   </tr>
287   <tr>
288     <td align="center"><a href="https://github.com/briandipalma"><img src="https://avatars2.githubusercontent.com/u/1597820?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Brian Di Palma</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/issues?q=author%3Abriandipalma" title="Bug reports">🐛</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=briandipalma" title="Code">💻</a></td>
289     <td align="center"><a href="https://robwise.github.io"><img src="https://avatars0.githubusercontent.com/u/6173488?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Rob Wise</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=robwise" title="Documentation">📖</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=robwise" title="Code">💻</a></td>
290     <td align="center"><a href="https://github.com/Belir"><img src="https://avatars0.githubusercontent.com/u/4818642?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Patryk Peas</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/issues?q=author%3ABelir" title="Bug reports">🐛</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=Belir" title="Code">💻</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=Belir" title="Tests">⚠️</a></td>
291     <td align="center"><a href="http://vauxlab.com"><img src="https://avatars2.githubusercontent.com/u/1193520?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Thijs Koerselman</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/issues?q=author%3A0x80" title="Bug reports">🐛</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=0x80" title="Code">💻</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=0x80" title="Tests">⚠️</a></td>
292     <td align="center"><a href="https://github.com/enriquecaballero"><img src="https://avatars3.githubusercontent.com/u/7918284?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Enrique Caballero</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/issues?q=author%3Aenriquecaballero" title="Bug reports">🐛</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=enriquecaballero" title="Code">💻</a></td>
293     <td align="center"><a href="https://github.com/lukaszmoroz"><img src="https://avatars2.githubusercontent.com/u/1408542?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Łukasz Moroz</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/issues?q=author%3Alukaszmoroz" title="Bug reports">🐛</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=lukaszmoroz" title="Tests">⚠️</a></td>
294     <td align="center"><a href="https://github.com/zimme"><img src="https://avatars0.githubusercontent.com/u/1215414?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Simon Fridlund</b></sub></a><br /><a href="#question-zimme" title="Answering Questions">💬</a> <a href="https://github.com/prettier/prettier-eslint/issues?q=author%3Azimme" title="Bug reports">🐛</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=zimme" title="Code">💻</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=zimme" title="Documentation">📖</a> <a href="#example-zimme" title="Examples">💡</a> <a href="#ideas-zimme" title="Ideas, Planning, & Feedback">🤔</a> <a href="#infra-zimme" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#plugin-zimme" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/prettier/prettier-eslint/pulls?q=is%3Apr+reviewed-by%3Azimme" title="Reviewed Pull Requests">👀</a> <a href="#talk-zimme" title="Talks">📢</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=zimme" title="Tests">⚠️</a> <a href="#tool-zimme" title="Tools">🔧</a> <a href="#tutorial-zimme" title="Tutorials">✅</a></td>
295   </tr>
296   <tr>
297     <td align="center"><a href="https://oliverjash.me/"><img src="https://avatars1.githubusercontent.com/u/921609?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Oliver Joseph Ash</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/issues?q=author%3AOliverJAsh" title="Bug reports">🐛</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=OliverJAsh" title="Code">💻</a></td>
298     <td align="center"><a href="http://palf.co"><img src="https://avatars1.githubusercontent.com/u/3812133?v=3?s=100" width="100px;" alt=""/><br /><sub><b>Mark Palfreeman</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=markpalfreeman" title="Documentation">📖</a></td>
299     <td align="center"><a href="https://github.com/alexmckenley"><img src="https://avatars1.githubusercontent.com/u/3639670?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alex Taylor</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=alexmckenley" title="Code">💻</a> <a href="https://github.com/prettier/prettier-eslint/commits?author=alexmckenley" title="Tests">⚠️</a></td>
300     <td align="center"><a href="https://github.com/chinesedfan"><img src="https://avatars3.githubusercontent.com/u/1736154?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Xianming Zhong</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=chinesedfan" title="Tests">⚠️</a></td>
301     <td align="center"><a href="https://github.com/lewisl9029"><img src="https://avatars0.githubusercontent.com/u/6934200?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Lewis Liu</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=lewisl9029" title="Code">💻</a></td>
302     <td align="center"><a href="https://hamidihamza.com"><img src="https://avatars0.githubusercontent.com/u/22576950?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hamza Hamidi</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=hamzahamidi" title="Code">💻</a> <a href="#ideas-hamzahamidi" title="Ideas, Planning, & Feedback">🤔</a> <a href="#maintenance-hamzahamidi" title="Maintenance">🚧</a> <a href="#tool-hamzahamidi" title="Tools">🔧</a> <a href="https://github.com/prettier/prettier-eslint/pulls?q=is%3Apr+reviewed-by%3Ahamzahamidi" title="Reviewed Pull Requests">👀</a></td>
303     <td align="center"><a href="https://github.com/iamrajiv"><img src="https://avatars0.githubusercontent.com/u/42106787?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Rajiv Ranjan Singh</b></sub></a><br /><a href="https://github.com/prettier/prettier-eslint/commits?author=iamrajiv" title="Code">💻</a></td>
304   </tr>
305   <tr>
306     <td align="center"><a href="https://github.com/cy6erskunk"><img src="https://avatars3.githubusercontent.com/u/754849?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Igor</b></sub></a><br /><a href="#maintenance-cy6erskunk" title="Maintenance">🚧</a></td>
307   </tr>
308 </table>
309
310 <!-- markdownlint-restore -->
311 <!-- prettier-ignore-end -->
312
313 <!-- ALL-CONTRIBUTORS-LIST:END -->
314
315 This project follows the [all-contributors][all-contributors] specification.
316 Contributions of any kind welcome!
317
318 ## LICENSE
319
320 MIT
321
322 [prettier]: https://github.com/jlongster/prettier
323 [eslint]: http://eslint.org/
324 [fix]: http://eslint.org/docs/user-guide/command-line-interface#fix
325 [npm]: https://www.npmjs.com/
326 [node]: https://nodejs.org
327 [build-badge]: https://img.shields.io/travis/prettier/prettier-eslint.svg?style=flat-square
328 [build]: https://travis-ci.org/prettier/prettier-eslint
329 [coverage-badge]: https://img.shields.io/codecov/c/github/prettier/prettier-eslint.svg?style=flat-square
330 [coverage]: https://codecov.io/github/prettier/prettier-eslint
331 [version-badge]: https://img.shields.io/npm/v/prettier-eslint.svg?style=flat-square
332 [package]: https://www.npmjs.com/package/prettier-eslint
333 [downloads-badge]: https://img.shields.io/npm/dm/prettier-eslint.svg?style=flat-square
334 [npm-stat]: http://npm-stat.com/charts.html?package=prettier-eslint&from=2016-04-01
335 [license-badge]: https://img.shields.io/npm/l/prettier-eslint.svg?style=flat-square
336 [license]: https://github.com/prettier/prettier-eslint/blob/master/other/LICENSE
337 [prs-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square
338 [prs]: http://makeapullrequest.com
339 [donate-badge]: https://img.shields.io/badge/$-support-green.svg?style=flat-square
340 [donate]: https://www.paypal.me/zimme
341 [coc-badge]: https://img.shields.io/badge/code%20of-conduct-ff69b4.svg?style=flat-square
342 [coc]: https://github.com/prettier/prettier-eslint/blob/master/other/CODE_OF_CONDUCT.md
343 [roadmap-badge]: https://img.shields.io/badge/%F0%9F%93%94-roadmap-CD9523.svg?style=flat-square
344 [roadmap]: https://github.com/prettier/prettier-eslint/blob/master/other/ROADMAP.md
345 [examples-badge]: https://img.shields.io/badge/%F0%9F%92%A1-examples-8C8E93.svg?style=flat-square
346 [examples]: https://github.com/prettier/prettier-eslint/blob/master/other/EXAMPLES.md
347 [github-watch-badge]: https://img.shields.io/github/watchers/prettier/prettier-eslint.svg?style=social
348 [github-watch]: https://github.com/prettier/prettier-eslint/watchers
349 [github-star-badge]: https://img.shields.io/github/stars/prettier/prettier-eslint.svg?style=social
350 [github-star]: https://github.com/prettier/prettier-eslint/stargazers
351 [twitter]: https://twitter.com/intent/tweet?text=Check%20out%20prettier-eslint!%20https://github.com/prettier/prettier-eslint%20%F0%9F%91%8D
352 [twitter-badge]: https://img.shields.io/twitter/url/https/github.com/prettier/prettier-eslint.svg?style=social
353 [emojis]: https://github.com/kentcdodds/all-contributors#emoji-key
354 [all-contributors]: https://github.com/kentcdodds/all-contributors
355 [atom-plugin]: https://github.com/prettier/prettier-atom
356 [atom-dev-tools]: https://discuss.atom.io/t/how-to-make-developer-tools-appear/16232
357 [vscode-plugin]: https://github.com/esbenp/prettier-vscode