Running your own GraphQL server

Running your own GraphQL Server can be ducking hard. But it doesn’t have to be!

So I recently wrote about how easy it was to set up your own GraphQL Resolver backend. Here’s what one of these GraphQL Resolver backends looks like:

Originally my plan was to create a step-by-step guide to teach everyone how to set their own server up — but after a few beers one night I sort of wrote the whole thing without thinking twice about committing each step at a time.

  1. Clone this repo:
  2. Setup Terraform:
  3. Setup your Amazon account according to the instructions in the repo
  4. Edit infrastructure/, set up all of your variables
  5. Edit infrastructure/, copy your Domain name to bucket and key, and copy your aws_region to region (variables don’t work in this one file)
  6. Run npm install or yarn in /api, then npm run build
  7. Change directory to /infrastructure, then run terraform init and terraform plan to see the new infrastructure to be created. If you’re happy with the changes, run terraform apply
  8. OPTIONAL: To tear down the infrastructure terraform has created, run terraform destroy

Note that it is normal to feel despair at how complicated GraphQL is — we’ve all felt it. I’ve spent months reading and thinking and coding GraphQL to get to the level of understanding I have now, so if you have any questions, tweet at me! @MxRozen

Originally published at on February 21, 2018.