Skip to Content
🚧 This is WIP documentation for v4 of the plugin. For v3 click here.
ESLGraphQL-ESLint
Rulesrequire-description

require-description

✅ The "extends": "plugin:@graphql-eslint/schema-recommended" property in a configuration file enables this rule.

  • Category: Schema
  • Rule name: @graphql-eslint/require-description
  • Requires GraphQL Schema: false ℹ️
  • Requires GraphQL Operations: false ℹ️
Enforce descriptions in type definitions and operations.

Usage Examples

Incorrect

# eslint @graphql-eslint/require-description: ['error', { types: true, FieldDefinition: true }]
 
type someTypeName {
  name: String
}

Correct

# eslint @graphql-eslint/require-description: ['error', { types: true, FieldDefinition: true }]
 
"""
Some type description
"""
type someTypeName {
  """
  Name description
  """
  name: String
}

Correct

# eslint @graphql-eslint/require-description: ['error', { OperationDefinition: true }]
 
# Create a new user
mutation createUser {
  # ...
}

Correct

# eslint @graphql-eslint/require-description: ['error', { rootField: true }]
 
type Mutation {
  "Create a new user"
  createUser: User
}
 
type User {
  name: String
}

Config Schema

The schema defines the following properties:

types (boolean)

Includes:

  • ObjectTypeDefinition
  • InterfaceTypeDefinition
  • EnumTypeDefinition
  • ScalarTypeDefinition
  • InputObjectTypeDefinition
  • UnionTypeDefinition

rootField (boolean)

Definitions within Query, Mutation, and Subscription root types.

DirectiveDefinition (boolean)

Read more about this kind on spec.graphql.org.

EnumTypeDefinition (boolean)

Read more about this kind on spec.graphql.org.

EnumValueDefinition (boolean)

Read more about this kind on spec.graphql.org.

FieldDefinition (boolean)

Read more about this kind on spec.graphql.org.

InputObjectTypeDefinition (boolean)

Read more about this kind on spec.graphql.org.

InputValueDefinition (boolean)

Read more about this kind on spec.graphql.org.

InterfaceTypeDefinition (boolean)

Read more about this kind on spec.graphql.org.

ObjectTypeDefinition (boolean)

Read more about this kind on spec.graphql.org.

OperationDefinition (boolean)

Read more about this kind on spec.graphql.org.

You must use only comment syntax # and not description syntax """ or ".

ScalarTypeDefinition (boolean)

Read more about this kind on spec.graphql.org.

UnionTypeDefinition (boolean)

Read more about this kind on spec.graphql.org.

Resources

Last updated on