Build a Real Time Chat App With React + NestJS & GraphQL
Build a full-stack, scaleable, production grade web app following best practices. Includes continuous delivery on AWS.
Created by Michael Guay | 14 hours on-demand video course
In this Build a Real Time Chat App With React + NestJS & GraphQL course, we go beyond the documentation & small simple starter apps to build a real-world full-stack chatting application. This application is built from the ground up to be scaleable & production-grade. The goal of the course is for you to be comfortable developing full-stack web apps so you can develop your own afterward.
We use a NestJS backend, a popular Node.js library that allows us to quickly create clean-code HTTP APIs. Our CRUD functionality will be served by a GraphQL API that persists data using a MongoDB database. We’ll use this same GraphQL API to create our messaging subscription which allows for WebSocket connection to our UI to facilitate messaging. Of course, everything will be secured with industry-standard JWT auth.
On the UI we will create a React App using the beautiful Material UI to easily create a responsive UI and interact with our backend. We’ll choose Apollo Client for state management so we can easily interact with our GraphQL API & cache data.
Finally, all of this will be deployed onto AWS Elastic Beanstalk & Amplify. Backed by a continuous delivery CI/CD pipeline, whenever we push code our latest changes will get built & deployed to our environment of choice.
By the end of the project, you will have learned everything you need to get started in building & deploying your very own production-grade web apps!
What you’ll learn
- Build & deploy a real-time messaging web application
- Implement JWT authentication on the backend & UI
- Use Material UI to develop a consistent & responsive UI
- Develop a GraphQL API for CRUD functionality
- Save data using MongoDB & the Abstract Repository pattern
- Execute automatic DB migrations
- Use Apollo Client to manage UI state & cache application data
- Use GraphQL WebSocket Subscriptions to publish & consume messages in real time
- Custom UI routing with React Router
- Use code generation tools to automatically generate types from GraphQL schema
- Implement server-side pagination to implement infinite scrolling
- Use MongoDB aggregation to perform single operation lookups & DB calls
- File upload to Amazon S3
- Production deployment to AWS all on free-tier
- Continuous Delivery & CI/CD
- Connect a Pub/Sub app to Redis to allow for distributed messages & horizontal scaling
- Connect a app to a custom domain & secure HTTPS traffic
Recommended Course
GraphQL with React: The Complete Developers Guide
NextJS & Open AI Featured
The Next.js 13 Bootcamp – The Complete Developer Guide
NestJS: The Complete Developer’s Guide Best seller
Who this course is for:
- Intermediate developers looking to learn best practices for building & deploying a scaleable, production grade web app
- Intermediate developers looking to learn how to deploy a web app on AWS with continuous delivery