src/content/docs/linter/graphql/rules.mdx
import { Icon } from "@astrojs/starlight/components";
Below the list of rules supported by Biome, divided by group. Here's a legend of the emojis:
correctness| Rule name | Description | Properties |
|---|---|---|
| useGraphqlNamedOperations | Enforce specifying the name of GraphQL operations. | <span class='inline-icon' title="This rule is recommended" ><Icon name="approve-check-circle" size="1.2rem" label="This rule is recommended" /></span><span class='inline-icon' title="The rule has an unsafe fix" ><Icon name="warning" label="The rule has an unsafe fix" size="1.2rem" /></span> |
nursery| Rule name | Description | Properties |
|---|---|---|
| noDuplicateArgumentNames | Require all argument names for fields & directives to be unique. | |
| noDuplicateEnumValueNames | Require all enum value names to be unique. | |
| noDuplicateFieldDefinitionNames | Require all fields of a type to be unique. | |
| noDuplicateGraphqlOperationName | Enforce unique operation names across a GraphQL document. | |
| noDuplicateInputFieldNames | Require fields within an input object to be unique. | |
| noDuplicateVariableNames | Require all variable definitions to be unique. | |
| noExcessiveLinesPerFile | Restrict the number of lines in a file. | |
| noRootType | Disallow the usage of specified root types | |
| useConsistentGraphqlDescriptions | Require all descriptions to follow the same style (either block or inline) to maintain consistency and improve readability across the schema. | |
| useInputName | Require mutation argument to be always called "input" | |
| useLoneAnonymousOperation | Disallow anonymous operations when more than one operation specified in document. | |
| useLoneExecutableDefinition | Require queries, mutations, subscriptions or fragments each to be located in separate files. |
style| Rule name | Description | Properties |
|---|---|---|
| useDeprecatedReason | Require specifying the reason argument when using @deprecated directive | <span class='inline-icon' title="This rule is recommended" ><Icon name="approve-check-circle" size="1.2rem" label="This rule is recommended" /></span> |
| useGraphqlNamingConvention | Validates that all enum values are capitalized. |
suspicious| Rule name | Description | Properties |
|---|---|---|
| noDuplicateFields | No duplicated fields in GraphQL operations. | <span class='inline-icon' title="This rule is recommended" ><Icon name="approve-check-circle" size="1.2rem" label="This rule is recommended" /></span> |
| noEmptySource | Disallow empty sources. | |
| useDeprecatedDate | Require the @deprecated directive to specify a deletion date. |
Missing a rule? Help us by contributing to the analyzer or create a rule suggestion here.