Skip to content

namingConvention

Property Value
Config name namingConvention
Default severity
Context Document + Schema
In recommended No

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:

Key What it covers
OperationDefinition Query, mutation, subscription names
FragmentDefinition Fragment names
VariableDefinition Variable names inside operations

Schema-side keys:

Key What it covers
types Umbrella default for all type kinds
ObjectTypeDefinition Object type names
InterfaceTypeDefinition Interface type names
EnumTypeDefinition Enum type names
UnionTypeDefinition Union type names
ScalarTypeDefinition Scalar type names
InputObjectTypeDefinition Input object type names
FieldDefinition Field names on types
InputValueDefinition Input field and argument names
EnumValueDefinition Enum value names
DirectiveDefinition Directive 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