Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

graphql-hive/graphql-tools-rs

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

graphql-tools (Rust)

Documentation | Crate | GitHub

The graphql_tools crate implements tooling around GraphQL for Rust libraries. Most of the tools are based on traits and structs implemented in graphql_parser crate.

The goal of this library is to create a common layer of tools that has similar/improved APIs to graphql-js reference implementation and graphql-tools from the JS/TS ecosystem.

Getting Started

Crates.io

Add graphql-tools as a dependency of your project by adding the following to your Cargo.toml file:

[dependencies]
graphql-tools = "..."

Or, if you are using cargo-edit:

cargo add graphql-tools

By default, this crate is using the graphql-parser library for parsing. If you wish to use an alternative implementation such as graphql-hive/graphql-parser-hive-fork, use the following features setup:

[dependencies]
graphql-tools = { version = "...", features = "graphql_parser_fork", default-features = false }

Validation Rules

This comparison is based on graphql-js reference implementation.

  • ExecutableDefinitions (not actually needed)
  • UniqueOperationNames
  • LoneAnonymousOperation
  • SingleFieldSubscriptions
  • KnownTypeNames
  • FragmentsOnCompositeTypes
  • VariablesAreInputTypes
  • LeafFieldSelections
  • FieldsOnCorrectType
  • UniqueFragmentNames
  • KnownFragmentNames
  • NoUnusedFragments
  • PossibleFragmentSpreads
  • NoFragmentCycles
  • UniqueVariableNames
  • NoUndefinedVariables
  • NoUnusedVariables
  • KnownDirectives
  • UniqueDirectivesPerLocation
  • KnownArgumentNames
  • UniqueArgumentNames
  • ValuesOfCorrectType
  • ProvidedRequiredArguments
  • VariablesInAllowedPosition
  • OverlappingFieldsCanBeMerged
  • UniqueInputFieldNames (blocked by graphql-rust/graphql-parser#59)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 7

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.