Skip to content

namingConvention

PropertyValue
Config namenamingConvention
Default severity
ContextDocument + Schema
In recommendedNo

Enforce naming conventions for operations, fragments, and variables.

# ❌ Bad — inconsistent naming
query get_user {
user {
id
}
}
# ✅ Good — PascalCase operation name
query GetUser {
user {
id
}
}

Each option key is a GraphQL AST kind name (or a comma-separated list of kinds). The value is either a case-style string or a detailed object.

Accepted case styles: camelCase, PascalCase, snake_case, UPPER_CASE

Document-side keys:

KeyWhat it covers
OperationDefinitionQuery, mutation, subscription names
FragmentDefinitionFragment names
VariableDefinitionVariable names inside operations

Schema-side keys:

KeyWhat it covers
typesUmbrella default for all type kinds
ObjectTypeDefinitionObject type names
InterfaceTypeDefinitionInterface type names
EnumTypeDefinitionEnum type names
UnionTypeDefinitionUnion type names
ScalarTypeDefinitionScalar type names
InputObjectTypeDefinitionInput object type names
FieldDefinitionField names on types
InputValueDefinitionInput field and argument names
EnumValueDefinitionEnum value names
DirectiveDefinitionDirective names

Detailed object form (use instead of a bare string):

OperationDefinition:
style: PascalCase
forbiddenPrefixes: ["get", "fetch"]
forbiddenSuffixes: ["Query", "Mutation"]
requiredPrefixes: []
requiredSuffixes: []
allowLeadingUnderscore: false
allowTrailingUnderscore: false
extensions:
graphql-analyzer:
lint:
rules:
namingConvention:
- warn
- OperationDefinition: PascalCase
FragmentDefinition: PascalCase
VariableDefinition: camelCase
types: PascalCase
FieldDefinition: camelCase
EnumValueDefinition: UPPER_CASE