Online Graphiql
- http://apis.guru/graphql-apis/
- https://launchpad.graphql.com/new
- https://www.graphqlhub.com/playground
- https://graphql.org/swapi-graphql/
- https://graphql-pokemon.now.sh/
- http://swapi.graphene-python.org/graphql - with mutation, needs key
- https://github.com/chentsulin/awesome-graphql
- Starwars https://launchpad.graphql.com/mpjk0plp9
Downloadable
Tutorials
- https://medium.com/codingthesmartway-com-blog/getting-started-with-react-and-graphql-395311c1e8da
- GraphQL & Nodejs - https://www.howtographql.com/graphql-js/1-getting-started/
- https://www.howtographql.com/
- Graphcool - https://www.graph.cool/, https://console.graph.cool/Example%20Project/playground
- GraphQL & Mongo - https://medium.com/the-ideal-system/graphql-and-mongodb-a-quick-example-34643e637e49
- Apollo, GraphQL, Mongo - https://blog.apollographql.com/tutorial-building-a-graphql-server-cddaa023c035
- Intro to GraphQL and Apollo - https://www.apollographql.com/docs/tutorial/introduction.html
- Apollo, SQLite and ReactJS - https://medium.com/infocentric/setup-a-graphql-api-with-apollo-2-0-sequelize-and-express-js-608d1365d776
- Input types and caching - https://blog.apollographql.com/tutorial-graphql-input-types-and-client-caching-f11fa0421cfd
- pagination - https://codeburst.io/graphql-pagination-by-example-part-1-15ec3313ae08
- Apollo Server tutorial - https://www.robinwieruch.de/graphql-apollo-server-tutorial/#apollo-server-pagination
Cheatsheet
Datasources
N + 1 and Dataloader
- https://medium.com/slite/avoiding-n-1-requests-in-graphql-including-within-subscriptions-f9d7867a257d
- http://www.petecorey.com/blog/2017/08/14/batching-graphql-queries-with-dataloader/
- https://www.apollographql.com/docs/apollo-server/features/data-sources.html#What-about-DataLoader
Caching
Graph Theory and Pagination
- https://blog.apollographql.com/explaining-graphql-connections-c48b7c3d6976
- https://www.prisma.io/docs/reference/prisma-api/queries-ahwee4zaey#pagination
- https://www.robinwieruch.de/graphql-apollo-server-tutorial/#apollo-server-pagination
Example query (twitter api)
query queryUser {
twitter {
tweet(id: "123") {
id
user {
id
name
description
}
retweets(limit: 5) {
id
user {
id
}
}
}
}
}
Example query - pokemon
{
pokemon(name: "Pikachu") {
id
number
name
attacks {
special {
name
type
damage
}
}
evolutions {
id
number
name
weight {
minimum
maximum
}
attacks {
fast {
name
type
damage
}
}
}
}
}