All Projects → leangen → Graphql Spqr Samples

leangen / Graphql Spqr Samples

Licence: apache-2.0
Minimal demo app for graphql-spqr

Programming Languages

javascript
184084 projects - #8 most used programming language

GraphQL-SPQR Spring Boot Samples

Build Status Join the chat at https://gitter.im/leangen/graphql-spqr

Simplistic Spring Boot application for demoing GraphQL SPQR lib's capabilities. This is mostly used by us for doing live demo's in our talks, not as documentation.

Package with Maven, run the jar, play around.

Out of the box, the application runs on port 8000

GraphQL Playground (graphical environment) is mapped to /gui by default (e.g. http://localhost:8000/gui)

API is exposed on /graphql

Example queries can be found in javadoc for query methods

For an elaborate introspection query you might want to use:

query IntrospectionQuery {
    __schema {
      queryType { name }
      mutationType { name }
      subscriptionType { name }
      types {
        ...FullType
      }
      directives {
        name
        description
        locations
        args {
          ...InputValue
        }
      }
    }
  }
  fragment FullType on __Type {
    kind
    name
    description
    fields(includeDeprecated: true) {
      name
      description
      args {
        ...InputValue
      }
      type {
        ...TypeRef
      }
      isDeprecated
      deprecationReason
    }
    inputFields {
      ...InputValue
    }
    interfaces {
      ...TypeRef
    }
    enumValues(includeDeprecated: true) {
      name
      description
      isDeprecated
      deprecationReason
    }
    possibleTypes {
      ...TypeRef
    }
  }
  fragment InputValue on __InputValue {
    name
    description
    type { ...TypeRef }
    defaultValue
  }
  fragment TypeRef on __Type {
    kind
    name
    ofType {
      kind
      name
      ofType {
        kind
        name
        ofType {
          kind
          name
          ofType {
            kind
            name
            ofType {
              kind
              name
              ofType {
                kind
                name
                ofType {
                  kind
                  name
                }
              }
            }
          }
        }
      }
    }
  }
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].