After building, deploying and scaling a dozen on products with the Django + GraphQL + SPA (React) setup, we have come to understand what works and what does not. In this talk, I will share our findings on how to do the same.
I will be using a simplified StackOverflow clone for demonstration. First, I will introduce Python-Graphene (and few other related libraries), the library that is used to build GraphQL endpoints. Then the talk will focus on how to structure your Django GraphQL project. Share the toolchain (a few management command scripts) that are handy to export your constants & GraphQL schemas to be used with your SPA. Integrating with an SPA (React for demo purpose) Auth, API calls.
Then I will talk about how you go about deploying your API using 2 different strategies: 1. Docker compose / swarm (Vendor independent, non-production workloads) 2. AWS Fargate (Vendor dependant, production workloads, serverless containers)
And a cost-effective and highly scale-able deployment strategy for your SPA (using AWS S3, CloudFront and ACM).