Microservices with NodeJS, React, Typescript and Kubernetes
Ditulis pada: December 09, 2023
Build & deploy an Ecommerce marketplace app using event-driven Microservices with Node, Typescript, Kubernetes and React
Read full review
What you'll learn
- Build an amazing e-commerce marketplace application with React
- Develop and design REST API with NodeJS and Express
- Create containers for microservices with Docker
- Orchestrate microservices with Kubernetes on minikube
- Orchestrate microservices with Kubernetes on AWS EKS cluster
- Setup Continuous Integration/Delivery Pipeline using Jenkins both locally and on the cloud
- Create custom helper library and publish as NPM package
- Setup and use tools like Elasticsearch, Kibana, Redis and Rabbitmq
- Setup services locally with docker compose
- Use Typescript both in React and NodeJS/Express microservices
- Use redux toolkit RTK query for data fetching and caching
- Setup microservices communications using Rabbitmq
- Setup centralized microservices monitoring
- Implementing observability and monitoring using Elasticsearch, Kibana, Prometheus and Grafana
- Use MongoDB, MySQL and PostgreSQL databases
- Setup access to microservices using JWT-based authentication
- Setup kubernetes deployments, services, statefulSets, ingresses, volumes, storage classes and much more
Description
In building large scale applications intended for growth, microservices architecture is the go-to solution. One issue for Javascript and NodeJS learners is the few courses and/or resources to teach event-driven microservices with NodeJS and Typescript. This course was designed to show you how to setup and build a large scale event-driven microservices application using React and Typescript on the client side and NodeJS and Typescript on the server side.
This course is a fullstack course that focuses on developing microservices and connecting them to a client web application and it follows a hands-on approach or 'learn-by-doing, which means the whole course is structured around building a fullstack web application and the different concepts will be explained detailedly as they are introduced.
What's this course about?
This course is about building a complete ecommerce freelance marketplace from scratch using popular development tools and the microservices architecural patterns. The curriculum for this course is going to be very hands on as we walk from start to finish building and deploying the application to production. The course is structured into 4 main parts:
Development of microservices and client application
Deployment to kubernetes
CI/CD pipeline with Jenkins
Monitoring and logs management
Each structure is broken down into its sections.
Microservices development
API gateway
Notification service
Authentication service
Users service
Gig service
Chat service
Order service
Review service
Deployment of microservices to
Minikube
AWS EKS cluster
Setup of CI/CD pipeline locally and on the cloud with Jenkins
Frontend development
Frontend deployment to
Minikube
AWS EKS cluster
What Technologies You'll Use
Because we are building a fullstack application, we will use a variety of tools and technologies. For the frontend, we'll use React, Tailwindcss and Typescript to show content to users. Each microservice will be built using NodeJS, Express and Typescript. Across the microservices, you'll use tools and technologies like Elasticsearch, Kibana, Rabbitmq, Redis, SocketIO, MySQL, PostgreSQL and MongoDB. Each microservice will be built as a Docker image and executed in a Kubernetes cluster. The Kubernetes cluster will be created locally with Minikube and on the cloud with AWS EKS. There are numerous tools, technologies and packages that will be used both locally and in our kubernetes clusters.
Not familiar with some of these? No problem! This course will guide you on how to setup and use these technologies in your apps.
What You'll Be Able to Do
At the end of this course, you will be able to
Understand the basics of microservices architecture
Build event-driven microservices using NodeJS, Express and Typescript
Use Database-per-service pattern
Setup communication styles with both Request/Response pattern and Event-driven pattern
Setup single node kubernetes cluster with Minikube and multi-node kubernetes cluster with EKS
Use Docker and Kubernetes to deploy multiple microservices either locally with Minikube or to the cloud with AWS EKS
Who this course is for:
- Javascript developers looking to build large, scalable applications
- Frontend or Backend developers who wants to get into the world of cloud infrastucture with AWS
- Developers who wants basic understanding of application deployments on Kubernetes