File: eslint-plugin-query.md | Updated: 11/15/2025
Search...
+ K
Auto
Docs Examples GitHub Contributors
Docs Examples GitHub Contributors
Docs Examples GitHub Contributors
Docs Examples Github Contributors
Docs Examples Github Contributors
Docs Examples Github Contributors
Docs Examples Github Contributors
Docs Examples Github Contributors
Maintainers Partners Support Learn StatsBETA Discord Merch Blog GitHub Ethos Brand Guide
Documentation
Framework
React
Version
Latest
Search...
+ K
Menu
Getting Started
Guides & Concepts
API Reference
ESLint
Examples
Plugins
Framework
React
Version
Latest
Menu
Getting Started
Guides & Concepts
API Reference
ESLint
Examples
Plugins
On this page
Copy Markdown
TanStack Query comes with its own ESLint plugin. This plugin is used to enforce best practices and to help you avoid common mistakes.
The plugin is a separate package that you need to install:
bash
npm i -D @tanstack/eslint-plugin-query
npm i -D @tanstack/eslint-plugin-query
or
bash
pnpm add -D @tanstack/eslint-plugin-query
pnpm add -D @tanstack/eslint-plugin-query
or
bash
yarn add -D @tanstack/eslint-plugin-query
yarn add -D @tanstack/eslint-plugin-query
or
bash
bun add -D @tanstack/eslint-plugin-query
bun add -D @tanstack/eslint-plugin-query
Flat Config (eslint.config.js)
------------------------------
### Recommended setup
To enable all of the recommended rules for our plugin, add the following config:
js
import pluginQuery from '@tanstack/eslint-plugin-query'
export default [\
...pluginQuery.configs['flat/recommended'],\
// Any other config...\
]
import pluginQuery from '@tanstack/eslint-plugin-query'
export default [\
...pluginQuery.configs['flat/recommended'],\
// Any other config...\
]
Alternatively, you can load the plugin and configure only the rules you want to use:
js
import pluginQuery from '@tanstack/eslint-plugin-query'
export default [\
{\
plugins: {\
'@tanstack/query': pluginQuery,\
},\
rules: {\
'@tanstack/query/exhaustive-deps': 'error',\
},\
},\
// Any other config...\
]
import pluginQuery from '@tanstack/eslint-plugin-query'
export default [\
{\
plugins: {\
'@tanstack/query': pluginQuery,\
},\
rules: {\
'@tanstack/query/exhaustive-deps': 'error',\
},\
},\
// Any other config...\
]
Legacy Config (.eslintrc)
-------------------------
### Recommended setup
To enable all of the recommended rules for our plugin, add plugin:@tanstack/query/recommended in extends:
json
{
"extends": ["plugin:@tanstack/query/recommended"]
}
{
"extends": ["plugin:@tanstack/query/recommended"]
}
Alternatively, add @tanstack/query to the plugins section, and configure the rules you want to use:
json
{
"plugins": ["@tanstack/query"],
"rules": {
"@tanstack/query/exhaustive-deps": "error"
}
}
{
"plugins": ["@tanstack/query"],
"rules": {
"@tanstack/query/exhaustive-deps": "error"
}
}
[###### Want to Skip the Docs?
Query.gg - The Official React Query Course
\
“If you’re serious about *really* understanding React Query, there’s no better way than with query.gg”—Tanner Linsley
Learn More](https://query.gg/?s=tanstack)
