Skip to content

Instantly share code, notes, and snippets.

import {
GraphQLSchema,
GraphQLObjectType,
GraphQLNonNull,
GraphQLInt,
GraphQLID,
GraphQLString } from 'graphql';
import rp from 'request-promise';
type Person {
id: ID,
name: String
age: Int
}
type Query {
person(id: ID!): Person
}
import rp from 'request-promise';
{
Query: {
person(obj, { id }){
return rp(`https://some-backend.com/person/${id}`)
.then( res => JSON.parse(res) );
}
}
query {
person(id: 5)
}
// resolve functions
{
Query: {
person: (obj, { id }) => loaders.user.byId(id)
}
}
// loaders
{
user: {
// > npm install graphql-tools
import { mockServer } from 'graphql-tools';
import schema from './mySchema.graphql';
const myMockServer = mockServer(schema);
myMockServer.query(`{
allUsers: {
id
name
// customize mocking per type (i.e. Integer, Float, String)
mockServer(schema, {
Int: () => 6,
Float: () => 22.1,
String: () => 'Hello',
});
// customize mocking per field in the schema (i.e. for Person.name and Person.age)
mockServer(schema, {
import { mockServer, MockList } from 'graphql-tools';
import casual from 'casual-browserify';
// The GraphQL schema. Described in more detail here:
// https://medium.com/apollo-stack/the-apollo-server-bc68762e93b
const schema = `
type User {
id: ID!
name: String
@helfer
helfer / apollo-starter-kit-schema.js
Last active June 23, 2017 04:50
GraphQL schema in the apollo-starter-kit
import {
makeExecutableSchema,
addMockFunctionsToSchema,
} from 'graphql-tools';
import mocks from './mocks'
const typeDefs = `
type Query {
testString: String
}
@helfer
helfer / apollo-server-tutorial-schema.js
Last active February 28, 2018 04:38
The full schema for the GraphQL server tutorial
import { makeExecutableSchema } from 'graphql-tools';
const typeDefs = `
type Author {
id: Int
firstName: String
lastName: String
posts: [Post]
}
type Post {