image of

Full Stack Serverless

Modern Application Development with React, AWS, and GraphQL

Nader Dabit

Cloud computing is typically associated with backend development and DevOps. But with the rise of serverless technologies and a new generation of services and frameworks, frontend and mobile developers can build robust applications with production-ready features such as authentication and authorization, API gateways, chatbots, augmented reality scenes, and more. This hands-on guide shows you how.

  • What do you expect to learn from this book?
  • What are some benefits of using a serverless architecture?
  • What are the different implementations of serverless? What is the difference between them?
  • How was your experience setting up the project using the amplify-cli?
  • What are the 2 main ways for creating APIs with Amplify?
  • What are serverless functions?
  • What is a Lambda function?
  • How was your experience creating the “amplify-react-app” example?
  • What is GraphQL?
  • What is a GraphQL schema?
  • What does “mutation” mean in GraphQL?
  • What does GraphQL subscriptions do?
  • What do you use to handle Authentication?
  • What is the difference between user pools and identity pools?
  • What are the 2 main ways of implementing Authentication on the client with amplify?
  • What can the Auth class be used for?
  • What are some of the trade-offs between rolling your own authentication flow versus using something like the withAuthenticator Higher-Order Component?
  • How was your experience following the code example?
  • What things were new to you from the way the author developed forms and components using React?
  • What type of events can invoke lambda functions?
  • What differences can you see in the data structures in the events from this chapter?
  • How does a lambda function have permissions to interact with other services in your app back-end?
  • What is the benefit of adding an Express server and set up routes on your serverless function?
  • How do you configure and add new items into a DynamoDB using Amplify?
  • How was your experience following the code example from this chapter?
  • How was your experience following the code example from this chapter?
  • Why is it important to understand modelling relationships between data when creating an API?
  • What authentication methods are supported by AppSync?
  • What do the @auth, @key and @connection graphql directives do?
  • How does the DynamoDB database gets created for this project?
  • What is the Amplify DataStore?
  • What is the difference between DataStore and the API class?
  • What are the DataStore built-in conflict resolution strategies?
  • What operations and predicates are available to DataStore?