I'll try to implement the 4 versions of optimization introduced in this blog post: https://dev-blog.apollodata.com/optimizing-your-graphql-request-waterfalls-7c3f3360b051#.bi8w9s6yn by @AndrewIngram
query UserEventScreen {
user(id: "1") {
name
email
upcomingEvent(first:5) {
edges {
node {
name
date
startTime
endTime
viewerRsvp
tags {
name
}
venue {
name
}
attendingFriendsOfViewer(first:4) {
edges {
node {
name
email
}
}
}
}
}
}
}
}