Source for a talk I gave about GraphQL and Elixir/Phoenix.
This repository has been archived on 2024-06-24. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
2018-04-10 12:37:51 +12:00
.gitignore Update readme. 2018-04-08 17:11:26 +12:00
go.sh update go.sh 2018-04-10 12:37:51 +12:00
README.md UPdate readme. 2018-04-09 13:05:38 +12:00

What the heck is GraphQL anyway?

According to graphql.org GraphQL is "A query language for your API" which is really only part of it.

Demo time

GraphQL is a specification for the GraphQL query language and how servers and clients should interact to implement those queries. The GraphQL specification is maintained by Facebook and should probably be treated with care (anyone who has had to maintain a react-native app knows what I'm talking about). Facebook's philosophy of "move fast and break things" is great for products but is not great for software dependencies.

Still, there are plenty of open source implementations of the spec now and you don't need to rely on Facebook's implementations of the server or client. At this time my gut feeling is still "avoid react/relay" but I know plenty of people who have and are building successful apps with them.

Notable open source efforts include Apollo, developed by the Meteor team - it includes a JavaScript server, browser client and a bunch of other stuff (like bindings for various JavaScript frameworks). We'll be using the Apollo client in our demonstrations today.

Still, this is an Elixir talk so you're probably most interested in hearing about Absinthe. Check out the step-2 branch to learn about it.