I think you can just use plugin:prettier/recommended.

From recommended configuration, it mentioned that plugin:prettier/recommended expands to

{
  "extends": ["prettier"],
  "plugins": ["prettier"],
  "rules": {
    "prettier/prettier": "error",
    "arrow-body-style": "off",
    "prefer-arrow-callback": "off"
  }
}

We can see that the extends array contains prettier. I think you don't need to add it again.

Answer from obelisk0114 on Stack Overflow
🌐
GitHub
github.com › prettier › eslint-plugin-prettier
GitHub - prettier/eslint-plugin-prettier: ESLint plugin for Prettier formatting · GitHub
For legacy configuration, this plugin ships with a plugin:prettier/recommended config that sets up both eslint-plugin-prettier and eslint-config-prettier in one go.
Author   prettier
🌐
Prettier
prettier.io › docs › integrating-with-linters
Integrating with Linters · Prettier
These are generally not recommended, but can be useful in certain circumstances. First, we have plugins that let you run Prettier as if it was a linter rule: eslint-plugin-prettier ·
🌐
GitHub
github.com › prettier › eslint-config-prettier
GitHub - prettier/eslint-config-prettier: Turns off all rules that are unnecessary or might conflict with Prettier. · GitHub
These rules might cause problems if using eslint-plugin-prettier and --fix. See the arrow-body-style and prefer-arrow-callback issue for details. There are a couple of ways to turn these rules off: Put "plugin:prettier/recommended" in your "extends".
Author   prettier
🌐
npm
npmjs.com › package › eslint-plugin-prettier
eslint-plugin-prettier - npm
For legacy configuration, this plugin ships with a plugin:prettier/recommended config that sets up both eslint-plugin-prettier and eslint-config-prettier in one go.
      » npm install eslint-plugin-prettier
    
Published   Jan 14, 2026
Version   5.5.5
Author   Teddy Katz
🌐
npm
npmjs.com › package › eslint-config-prettier
eslint-config-prettier - npm
These rules might cause problems if using eslint-plugin-prettier and --fix. See the arrow-body-style and prefer-arrow-callback issue for details. There are a couple of ways to turn these rules off: Put "plugin:prettier/recommended" in your "extends".
      » npm install eslint-config-prettier
    
Published   Jul 18, 2025
Version   10.1.8
Author   Simon Lydell
🌐
Josh Finnie
joshfinnie.com › blog › adding-eslint-and-prettier-to-my-blog
Adding ESLint & Prettier to My Blog | www.joshfinnie.com
December 2, 2024 - npm install --save-dev eslint-plugin-prettier/recommended eslint-plugin-astro
Find elsewhere
Top answer
1 of 2
456

UPDATE 2023: ESLint is deprecating formatting rules and recommend you use a source code formatter instead.

tl;dr: Use eslint-config-prettier in eslint, and run prettier separately. You can ignore the rest.

From v8.53.0 onwards, you will see a deprecation warning if those formatting rules are enabled in your config. You should still use eslint-config-prettier to disable conflicting rules until the rules are removed in a new major release.

ESLint contains many rules and those that are formatting-related might conflict with Prettier, such as arrow-parens, space-before-function-paren, etc. Hence using them together will cause some issues. The following tools have been created to use ESLint and Prettier together.

prettier-eslint eslint-plugin-prettier eslint-config-prettier
What it is A JavaScript module exporting a single function. An ESLint plugin. An ESLint configuration.
What it does Runs the code (string) through prettier then eslint --fix. The output is also a string. Plugins usually contain implementations for additional rules that ESLint will check for. This plugin uses Prettier under the hood and will raise ESLint errors when your code differs from Prettier's expected output. This config turns off formatting-related rules that might conflict with Prettier, allowing you to use Prettier with other ESLint configs like eslint-config-airbnb.
How to use it Either calling the function in your code or via prettier-eslint-cli if you prefer the command line. Add it to your .eslintrc. Add it to your .eslintrc.
Is the final output Prettier compliant? Depends on your ESLint config Yes Yes
Do you need to run prettier command separately? No No Yes
Do you need to use anything else? No You may want to turn off conflicting rules using eslint-config-prettier. No

For more information, refer to the official Prettier docs.

It's the recommended practice to let Prettier handle formatting and ESLint for non-formatting issues, prettier-eslint is not in the same direction as that practice, hence prettier-eslint is not recommended anymore. You can use eslint-plugin-prettier and eslint-config-prettier together.

2 of 2
3
  • Use eslint-config-prettier to turn-off eslint rules that are unnecessary or might conflict with Prettier. See 1st line in readme: eslint-config-prettier.
  • Use eslint-plugin-prettier to run Prettier as an Eslint-rule. See 1st line in readme: eslint-plugin-prettier
  • Use both to take advantage of both tools. See recommended configuration: eslint-plugin-prettier. This way you use plugin to run Prettier as an Eslint-rule, and config to turn-off eslint rules that are unnecessary or might conflict with Prettier.
  • You can ignore prettier-eslint
🌐
Joshuakgoldberg
joshuakgoldberg.com › blog › you-probably-dont-need-eslint-config-prettier-or-eslint-plugin-prettier
You Probably Don't Need eslint-config-prettier or eslint-plugin-prettier | Goldblog
Hence the plugin: prefix in front of them: that’s how ESLint knows where to find the configs. eslint-config-prettier is a shareable config that disables formatting-related rules.
🌐
Medium
medium.com › @fabianterh › an-opinionated-guide-to-setting-up-prettier-with-eslint-51809b1b3043
An opinionated guide to setting up Prettier with ESLint | by Fabian Terh | Medium
September 2, 2018 - Alternatively, Prettier’s docs state that eslint-plugin-prettier exposes a "recommended" configuration which you can extend: "extends":["plugin:prettier/recommended"].
🌐
Robin Wieruch
robinwieruch.de › prettier-eslint
How to use Prettier with ESLint
How to combine Prettier and ESLint for VSCode, Sublime, or any other IDE/editor. You will get to know the ESLint Prettier Rules that are needed to get you started ...
🌐
Ben Ilegbodu
benmvp.com › blog › prettier-eslint
Prettier + ESLint = ❤️ | Ben Ilegbodu
The plugin:prettier/recommended extends the eslint-config-prettier which turns off a handful of rules from our base config that are unnecessary or might conflict with Prettier. We typically have a base config, like eslint-config-airbnb or ...
🌐
Medium
medium.com › @contactmanoharbatra › eslint-and-prettier-configuration-f0259ebeb58b
Eslint and Prettier configuration | by Manohar Batra | Medium
September 10, 2025 - import globals from "globals"; import js from "@eslint/js"; import pluginReact from "eslint-plugin-react"; import pluginReactHooks from "eslint-plugin-react-hooks"; import pluginJsxA11y from "eslint-plugin-jsx-a11y"; export default [ js.configs.recommended, { files: ["**/*.{js,jsx,ts,tsx}"], languageOptions: { ecmaVersion: "latest", sourceType: "module", globals: globals.browser, }, plugins: { react: pluginReact, "react-hooks": pluginReactHooks, "jsx-a11y": pluginJsxA11y, }, rules: { "react/react-in-jsx-scope": "off", // Not needed with React 17+ "react/prop-types": "off", // If using TS }, settings: { react: { version: "detect" }, }, }, ];
🌐
Next.js
nextjs.org › docs › app › api-reference › config › eslint
Configuration: ESLint | Next.js
2 weeks ago - We recommend including eslint-config-prettier in your ESLint config to make ESLint and Prettier work together.
🌐
Expo Documentation
docs.expo.dev › integrations › tools › using eslint and prettier
Using ESLint and Prettier - Expo Documentation
2 weeks ago - Running this command also creates a eslint.config.js file at the root of your project which extends configuration from eslint-config-expo. ... Recommended: If you're using VS Code, install the ESLint extension to lint your code as you type.
🌐
Cloud Four
cloudfour.com › thinks › getting-started-with-the-prettier-plugin-for-eslint
Getting Started with the Prettier Plugin for ESLint – Cloud Four
February 10, 2023 - Then, add eslint-config-prettier to the “extends” array in your .eslintrc.* file, you can use the “recommended” configuration. When doing this, make sure that it goes last, so it can override other configurations. It should look something like this when you are finished: { "plugins": [ "prettier" ], "rules": { "prettier/prettier": "error" }, "extends": [ "plugin:prettier/recommended" ] } Code language: JSON / JSON with Comments (json)
🌐
Medium
medium.com › @robinviktorsson › setting-up-eslint-and-prettier-for-a-typescript-project-aa2434417b8f
Setting Up ESLint and Prettier for a TypeScript Project | by Robin Viktorsson | Medium
March 10, 2025 - npm install --save-dev eslint ... allows ESLint to parse TypeScript code. @typescript-eslint/eslint-plugin provides recommended TypeScript rules....