Mô tả

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

Bạn sẽ học được gì

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

Yêu cầu

  • Basic knowledge of Javascript and Express is required
  • No prior React knowledge is required
  • No prior Backend Development knowledge required
  • No prior DevOps knowledge required

Nội dung khoá học

33 sections

Introduction

6 lectures
Walkthrough of complete application
25:47
AWS kubernetes objects overview
07:27
Overview of microservices code
04:02
Elasticsearch and Kibana dashboard
08:08
Prometheus and Grafana overview
04:36
Complete project github link and presentation slides
00:00

Basics of Microservices

4 lectures
Monolithic Architecture
09:25
Microservices Architecture
12:02
Microservices communication types
06:48
Microservices communication styles
05:32

Project Architecture

6 lectures
Project description
07:34
Functional requirements
07:03
Non-functional requirements
07:08
Design decisions
09:32
Project architecture
08:51
Inter-process communication
06:16

Tools Setup with Docker Compose

12 lectures
Github link to docker compose services
00:03
Local dev tools
03:16
Docker installation
02:46
Redis service
10:10
MongoDB service
06:18
MySQL and Postgres services
07:57
Rabbitmq service
06:07
IMPORTANT: Note on Elasticsearch and Kibana
00:36
Elasticsearch service
13:37
Kibana service
10:07
Start docker compose services
06:17
Kibana dashboard
04:19

Microservices Helper Library

17 lectures
Section introduction
00:39
Github link
00:02
Helper library description
09:18
Helper library folder
10:20
Install cross-env package for for Windows users
00:20
Github project
05:19
Node npmrc file
08:34
Using interfaces in the course
00:15
Helper interfaces
09:29
Cloudinary upload method
12:06
Error handlers
11:45
Gateway middleware
13:42
Logger
14:10
Helpers file
02:42
Github actions
11:36
Publish helper library
06:05
Update Library
04:58

Notification Microservice

32 lectures
Section introduction
01:00
Notification microservice github link
00:00
Notification emails introduction
05:19
Notification service setup
06:51
Package json build script
09:02
Add src folder and files
09:14
Notification service config file
09:17
Server functions
10:00
Notification service health route
06:25
Elasticsearch connection
12:26
Start notification service
10:22
Rabbitmq connection
10:44
Rabbitmq introduction
09:22
Rabbitmq channel methods
07:38
Auth email consumer method
16:42
Use auth email consumer method
09:53
Order email consumer method
07:18
Mail transport method
05:34
Email templates - Part 1
12:37
Email templates - Part 2
04:56
Use send email method
11:54
Add send email to order consumer
06:48
Setup jest
12:30
Auth consumer test - Part 1
13:42
Auth consumer test - Part 2
07:11
Development dockerfile
07:50
Add notification service to docker compose
07:31
Production dockerfile
10:50
Package json scripts commands
05:50
Copy emails folder into build - Part 1
08:08
Copy emails folder into build - Part 2
00:15
Push code to github
04:22

API Gateway Microservice Setup

13 lectures
API gateway architecture
03:59
API gateway microservice github link
00:00
Gateway service folder
06:51
Gateway server file - Part 1
10:12
Gateway server file - Part 2
09:24
Gateway server file - Part 3
07:50
Gateway config file
09:10
Setup gateway service elasticsearch connection
07:49
Gateway health route
09:55
Authentication middleware
09:32
Axios Service
12:40
Add gateway service to docker compose
03:39
Push code to github
04:03

Authentication Microservice

42 lectures
Auth service introduction
03:35
Auth microservice github link
00:00
Auth service project setup
08:20
Setup database connection
11:28
Fix sequelize database setup
01:32
Check elasticsearch connection method
04:06
Security middleware function
10:20
Server methods
09:06
App entry file
04:34
Signup schema
09:56
Login schema
06:54
Sequelize model basics
09:38
Database table model fields
12:51
Database indexes
12:41
Fix AuthModel prototype error
05:47
Connect MySQL to tableplus
07:13
Rabbitmq connection
10:59
Create user service method
09:56
Auth service get methods
09:44
Auth service update methods
06:39
Auth service endpoints
06:06
Signup controller method - Part 1
14:07
Signup controller method - Part 2
11:20
Auth service signup routes
12:48
Auth service gateway methods
11:20
Gateway signup route
08:33
Get cloudinary keys
11:26
Update shared library gateway method
08:55
Add gateway token to shared library
08:51
Auth signin controller
11:28
Verify email controller
09:14
Forgot password method
10:29
Reset password method
08:47
Change password method
08:17
Current user method
11:48
API gateway current user controller
04:41
Refresh token method
11:43
Auth unit test mock
11:27
Current user read method unit test
14:38
Fix jest issue
06:10
Resend email test
08:14
Push to github
05:25

Authentication Service Elasticsearch

17 lectures
Elasticsearch and Kibana dashboard
11:56
Create gigs index
12:05
Add test data to gigs index
05:51
Get gig by id
05:51
Elastic dump command
00:14
Upload gigs data
06:57
Elaasticsearch API
10:33
Gigs search query - Part 1
11:18
Gigs search query - Part 2
12:25
Search controller
09:54
Search routes
02:38
API gateway auth search controller
12:51
Search http test
06:57
Auth seed controller - Part 1
13:28
Auth seed controller - Part 2
07:40
Auth seed http test
05:25
Push to github
01:49

Users Microservice

30 lectures
Section introduction
05:43
Users microservice github link
00:00
Users service setup
04:02
Database connection
09:01
Elasticsearch connection
06:00
Server setup
06:58
Buyer schema
08:01
Seller schema - Part 1
10:08
Seller schema - Part 2
06:03
Seller validation scheme
06:31
Buyer service get methods
07:55
Buyer service update methods
05:19
Seller service get methods
07:43
Seller service update methods
15:11
Buyer gateway service
05:23
Seller gateway service
05:02
Rabbitmq queue connection and producer methods
08:48
Rabbitmq buyer message consumer method
12:47
Rabbitmq seller message consumer method
09:54
Rabbitmq review message consumer method
12:20
Buyer controller routes
11:54
Seller create and update controllers
11:25
Router definition order
05:04
Seller get controller
05:02
Seller seed controller - Part 1
11:50
Seller seed controller - Part 2
15:22
Seller gateway controller
09:36
Seed http test
07:00
Buyer unit test
13:43
Push to github
06:06

Gig Microservice

38 lectures
Section introduction
05:03
Gig microservice github link
00:00
Gig service setup
06:43
Gig service folders
06:03
Elasticsearch add to index method
10:29
Elasticsearch update and delete methods
02:47
Gig schema - Part 1
10:44
Gig schema - Part 2
07:39
Rabbitmq queue connection
03:54
Gig service get methods
12:32
Gig service create method
10:37
Gig service delete and update methods
08:37
Update gig review method
04:52
Gig queue consumer methods
10:21
Create redis connection
07:07
Get category from redis cache method
07:32
Gig create controller
10:12
Add sortid to create method
04:30
Gig update controller
10:05
Gig get methods
06:59
Gig search methods
09:12
Elasticsearch more like this method
09:49
Top gigs method
12:55
Test top gig method
05:14
Search controller
11:50
Seed data method
13:36
Move seed data consumer method to server start queues method
01:30
Gig seed controller
07:59
Gig unit test
14:36
Gateway gig controllers
13:48
Gateway gig get controller
06:32
Fix gig routes
01:02
Gateway redis connection
04:55
Gateway cache methods
11:52
SocketIO setup
10:03
SocketIO events
11:17
Update current user controller
06:23
Push to github
05:00

Chat Microservice

21 lectures
Section introduction
04:29
Chat microservice github link
00:00
Chat project setup
09:09
Chat service socketio information
03:40
Chat service socket connection
16:43
Start chat server
03:49
Conversation model
07:20
Message database model
08:03
Rabbitmq connection
04:58
Message service add message method
12:16
Get chat list method
12:11
Get user messages method
07:29
Mark messages method
06:02
Create message controller
12:57
Update get health controller
09:46
Chat service routes
05:41
Set default createdAt date
01:35
Chat create controller unit test
07:22
Chat gateway service
07:37
Chat gateway controller
11:39
Push to github
02:41

Order Microservice

26 lectures
Section introduction
06:05
Order microservice github link
00:00
Service setup
05:31
Order model
09:13
Notification schema
05:26
Fix date in schema
00:52
Notification service
12:32
Get and create order methods
15:43
Approve and cancel order methods
11:26
Deliver order mthod
07:49
Extension request method
12:46
Update order review method
05:51
Order consumer rabbitmq method
07:22
Stripe account creation
08:27
Create stripe intent method - Part 1
12:18
Create stripe intent method - Part 2
11:20
Create order controller method
08:20
Update order controllers
09:55
Update deliver order method
05:29
Notification controllers
05:37
Order routes
07:33
Create order unit test
13:33
Create controller order method unit test
08:33
Gateway order controller and routes
13:13
Fix order routes
01:00
Push code to github
02:13

Review Microservice

14 lectures
Section introduction
02:34
Review microservice github link
00:00
Service setup
04:34
Postgres database connection
12:29
Review database table
12:01
Create review method
10:49
Rabbitmq producer
06:35
Get reviews methods
05:41
Review controller
09:28
Create review method unit test
10:15
Gateway review controller
08:30
Gateway current user controller unit test - Part 1
09:03
Gateway current user controller unit test - Part 2
09:49
Push to github
01:30

Local Elasticsearch Monitoring

9 lectures
Metric beats docker service
11:51
Run metricbeat service
10:20
Heartbeat docker service
14:22
Run heartbeat service
05:00
Update elasticsearch and kibana in docker compose file
14:27
Create kibana service token
11:08
APM server setup
11:11
APM nodejs client setup
10:51
Run apm server
07:11

Kubernetes Deployment on Minikube

44 lectures
Kubernetes fundamentals
09:27
Kubernetes components
07:59
Kubernetes objects
13:01
Kubernetes manifest files for minikube github link
00:00
Minikube installation
09:45
Lens IDE
08:26
Main commands used in this section
00:00
Delete and restart minikube
00:25
Minikube vs. Cloud resources
02:43
Redis kubernetes objects
13:15
Redis statefulsets
14:14
Rabbitmq kubernetes object
12:23
Update Rabbitmq kubernetes object
14:08
MySQL kubernetes object - Part 1
12:39
MySQL kubernetes object - Part 2
07:13
Postgres kubernetes object
06:31
Update postgres kubernetes objects
04:25
Access postgres from your local terminal
00:15
Mongodb kubernetes object
07:15
Elasticsearch kubernetes object
14:10
Kibana kubernetes object
10:21
Apply kibana objects
08:34
Create secrets file
15:24
Use secrets
07:27
Import express async errors
01:14
Build gateway service docker image
12:14
Review service kubernetes objects
12:47
Order and chat services kubernetes objects
04:36
API gateway kubernetes objects
10:02
API gateway ingress
12:03
Dynamically set sameSite property to gateway microservice
02:22
Run api gateway ingress
09:57
Generate self-signed certificates
16:41
Create gateway tls secret
12:06
Remove whitespace from secrets
04:01
Update gateway ingress
04:51
Kibana ingress
09:48
Kibana configmap
13:33
Change kibana user password
11:14
Elasticsearch heartbeat object
14:02
View heartbeat on kibana dashboard
01:47
Elasticsearch metricbeart object
06:03
View metricbeat on kibana dashboard
03:28
Port forward to access MySQl and MongoDB
07:08

Local CI/CD with Jenkins

16 lectures
Jenkins docker service
06:39
Jenkins agent docker service
12:14
Add Jenkins agent as node
08:48
Install docker on jenkins agent
08:11
Install plugins
13:19
Create minikube kubernetes token
13:14
Review service jenkinsfile
10:53
Review service jenkins pipeline
14:40
Docker image pipeline build stage
10:11
Reusable groovy functions
14:42
Create slack webhook
06:18
Create jenkins file post actions
10:45
Add kubernetes stage to pipeline
09:30
Test kubernetes pipeline stage
06:23
Github webhooks
09:48
Setup order service pipeline
06:52

Kubernetes Deployment on AWS EKS Cluster

38 lectures
Microservice eks cluster architecture
13:24
AWS cost
08:20
Install aws cli
08:21
Create VPC and subnets
09:27
Tag public subnets
05:27
Create NAT gateway
07:05
Create security groups
08:42
Add k8s objects files
03:44
About next two videos
00:35
Create EBS CSI driver role
13:18
Install aws ebs-csi driver
05:49
Update rabbitmq storage class and persistent volume
05:27
Create mysql rds instance
11:38
Create postgres rds instance
06:36
Main commands used in this section
00:00
Install eksctl
07:45
Eksctl introduction
07:03
Create kubernetes cluster with eksctl
08:46
Create kubernetes cluster nodegroup with eksctl
13:52
View worker nodes
06:24
Create elasticsearch cloud deployment
04:17
Add elasticsearch url to secrets
10:05
Create redis cluster on aws
08:32
Create mongodb cloud database
06:35
Apply API gateway kubernetes deployment
02:27
Fix postgres connection issue
04:50
Dynamically set postgres connection ssl property
02:21
Add new env variable to review microservice
04:36
AWS route53 hosted zones
11:34
Apply gateway objects
05:43
Create application load balancer controller service account
11:17
Install ALB controller with helm
12:35
Add annotations to gateway ingress
12:41
Create gateway application load balancer ingress
11:31
Create gateway external DNS service account
12:16
Create gateway external DNS
11:47
Run elasticsearch heartbeat and metricbeat
09:24
Test endpoints
04:31

Jenkins Setup on AWS

10 lectures
Create EC2 jenkins master
09:28
Install jenkins on EC2 jenkins master
13:09
Access jenkins master dashboard
02:26
Setup jenkins agent
08:10
Setup ssh connection between jenkins master and agent
09:59
Install nodejs and docker
06:27
Jenkins aws service account token
10:10
Create review service pipeline
07:09
View review service pipeline logs
03:23
Create github webhook
02:49

Prometheus and Grafana

10 lectures
Skip videos
00:09
Create EBS CSI driver role
13:18
Install aws ebs-csi driver
05:49
Install prometheus with helm
08:34
Setup prometheus ingress
10:47
Setup external DNS for prometheus
08:32
Prometheus host
01:50
Install grafana with helm
07:40
Setup grafana ingress
06:49
View grafana dashboard
08:33

React Frontend Project Setup

6 lectures
Frontend code github link
00:00
Setup project with vite
07:18
Update vite config file
10:05
Add prettier and eslint
05:28
App folder structure
06:04
Install tailwindcss
08:37

Index Components

14 lectures
Section introduction
00:41
Create index component
06:12
Create app router component
08:09
React code splitting concept
08:01
Button component
08:31
Index header component
13:37
Hero component
07:46
Hero component text animation
09:29
Text input component
10:57
Utils service file
07:32
Remove shared library
08:09
Gig tabs component
12:09
Gig tabs items
10:36
Categories components
13:47

Authentication Feature and Components

24 lectures
Modal background component
06:18
Alert component
09:43
Dropdown component
15:19
Login modal component
13:04
Register modal component
07:47
Setup redux store
10:16
Use redux store file
07:25
RTK query setup
14:18
RTK create api method
06:19
Authentication service
14:19
Register component implementation
13:17
Register component country dropdown
10:36
Register component profile picture
14:42
Validate registration user data
13:46
Create new user method
10:41
Fix RTK query issues
03:43
Create auth reducer
09:53
Logout reducer
07:56
Login user
09:17
Forgot password
10:31
Reset password
13:35
Reset user password testing
05:46
Confirm email
10:29
Add all interfaces
00:30

Home Components

13 lectures
Home header component
11:37
Check current user query
11:45
App page component conditionals
11:52
Logout method
13:17
Add gateway service logout route
07:28
Setup protected route component
10:23
Display banner component
12:43
Slider component - Part 1
12:25
Slider component - Part 2
07:46
Home gigs view component
09:20
Featured sellers component
07:11
Star rating component
11:09
Error component
03:49

Buyer Feature and Components

7 lectures
Buyer dashboard route
07:06
Buyer dashboard component
12:22
Buyer table component
14:38
Buyer reducer
07:11
Settings dropdown component
13:00
Detect outside click hook
12:13
Fix settings dropdown items
03:30

Seller Components

17 lectures
Create breadcrumb component
09:29
Add new seller component
09:51
Personal info component
10:34
Get personal info data
15:43
Seller experience fields component
10:54
Seller experience fields onchange method
12:39
Add and remove fields
13:02
Handle fields change method
05:17
Seller education fields
12:06
Add other seller fields
05:13
Seller service methods
11:24
Seller validation
11:34
Seller onCreate method
14:51
Dispatch seller inside app page component
13:51
Fix email verification issue
10:22
Fix dynamic input text issue
15:37
Update settings dropdown
03:21

Seller Profile Components

35 lectures
Add profile header component
10:29
Profile header gig info
11:00
Fullname update fields
12:01
Display star ratings
10:12
Install react fast compare package
07:14
Profile tabs components
09:08
Seller Context
08:42
Edit language components
13:12
Handle update method
12:33
Use language edit fields
09:58
About me component
10:30
Social links component
13:26
Use social links component
09:50
Certificates components
10:18
Certificate edit fields
17:10
Description component
10:02
Experience and education components
02:05
Show experience and education components
08:56
Skill fields component
11:47
Skills component properties
12:05
Create toast method
06:02
Seller update method
09:04
Import toast component styles
01:22
View seller profile page
09:56
Seller dashboard header component
14:01
Header reducer
14:00
Manage earnings component
14:11
Manage earnings table component
09:47
Manage orders component
12:13
Manage orders table body
07:42
Seller dashboard component
14:56
Active orders table
08:17
Add circular page loader to app page
12:39
Update featured expert component on home page
09:04
Add index component suspense fallback
02:06

Gigs Feature and Components

37 lectures
Add gig component
12:02
Setup react quill
15:42
Add category dropdown
07:39
Tags input component - Part 1
14:43
Tags input component - Part 2
14:37
Search tags field
03:18
Characters validation
06:29
Cover image selection
09:51
Gig validation hook
14:25
Approval modal component
15:10
Gig create method
13:19
Gig view component
14:06
Gig context
07:04
Gig right package - Part 1
12:28
Gig right package - Part 2
07:09
Gig view seller component
14:05
Gig related tags component
05:15
Gig overview and about components
10:27
Html parser component
10:18
Gig view reviews
07:57
Gigs search result components
09:33
Budget dropdown component
15:49
Delivery time component
12:58
Gig card display item component
13:15
Search gigs query
13:35
Use gig display item component
14:52
Fix budget min and max issue
03:46
Gig paginate component
15:28
Use gig paginate component
09:26
Add gig card display item to seller profile
10:21
Top gigs view component
14:32
Add top gigs view component to home page
13:12
Top gigs slide methods
10:26
Gig card item component
12:09
Gig card item methods - Part 1
15:06
Gig card item methods - Part 2
07:58
Edit gig component
16:13

Chat Feature and Components

28 lectures
Main chat and chatbox components
14:29
Scroll to bottom hook
07:08
Message query in chatbox component
13:35
Use save chat message in chatbox component
13:08
Chatbox form
08:06
Message dropdown component
15:19
Add message dropdown to home header
07:47
Fix chat conversation bug
05:19
Setup socketio client
14:46
Emit socket events in components
10:35
Chat list component
15:26
Chat list select user method
15:22
Chat utils - Part 1
14:09
Chat utils - Part 2
07:52
Chat window component
11:34
Display receiver username in chat window
12:37
Chat image preview component
10:46
Use chat image preview component
14:23
Offer modal component
15:34
Use offer modal component
07:56
Chat offer component
12:38
Use chat offer component
06:20
Chat file component
12:45
Add download file method to chat file component
03:21
Send message method in chat window component
13:09
Notification reducer
14:51
Mobile header components
06:18
Index header sidebar
13:22

Order Feature and Components

24 lectures
Checkout form Component
16:07
Checkout form handle submit method
15:04
Checkout component
14:08
Payment intent method and requirements component
11:58
Download order invoice
15:17
Start order method
11:05
Order component
14:36
Count down timer hook
17:07
Extend delivery modal
15:59
Delivery work modal
15:36
Order details table component
14:19
Order activities component
14:03
Order placed component
08:36
Order extension component
15:12
Order delivered component
07:57
Order review component
08:53
Fix review microservice bug
03:11
Update buyer and seller order tables
12:08
Get seller reviews
16:26
Gig reviews issue
10:47
Remapped review response in review microservice
03:28
Order dropdown component
15:29
Notifications dropdown
20:55
Before window unload hook
08:45

Settings Component

12 lectures
Settings and change password components
15:21
Settings service
08:21
Fix change password bug
09:58
Fetch base query error method
07:40
Gig index item component
11:06
Gig index display
17:19
Gig index info display
07:03
NPM run build command
07:47
NGINX config - Part 1
14:11
NGINX config - Part 2
07:18
Setup dockerfile
11:09
Docker build and push image
02:38

Frontend Deployment

16 lectures
Create frontend kubernetes objects on minikube
08:32
Create self-signed certificates for frontend ingress
12:58
Frontend minikube ingress
06:33
View frontend application on browser
02:13
Push code to github
07:20
Add stripe api key to jenkins
04:06
Create frontend jenkins pipeline
16:28
Install APM RUM package in React
03:16
Make changes to frontend ENV file
05:15
Install elastic apm node package
02:46
Add APM server url to ENV file
04:10
Create frontend kubernetes objects on AWS EKS cluster
10:17
Create frontend deployment and ingress
03:46
Move require to index html file in react
14:59
Fix api gateway client url
10:31
Update frontend ingress host
01:24

Bonus Section 1 - User Auth OTP Verification

15 lectures
Section introduction
04:55
Update auth schema with new properties
06:29
Add browser name and device type to signup controller
03:53
Add OTP methods to auth service
10:23
Send OTP from signin controller
14:32
Verify OTP controller
07:26
Update notification service
03:15
Add verify OTP to gateway controller
06:35
Update React client packages
07:07
Add verify OTP component
05:54
Install react device detect package
12:08
Add browser name and device type to login component
05:27
Add onVerifyOTP method
17:36
Render verify OTP method
08:12
Test verify OTP logic
06:25

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.