Skip to main content

Microservices with NodeJS, React, Typescript and Kubernetes

97h 19m 16s
English
Paid

Course 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.

Read more about the course

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.

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 628 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: 1.1 - Walkthrough of complete application

All Course Lessons (628)

#Lesson TitleDurationAccess
1
1.1 - Walkthrough of complete application Demo
25:48
2
1.2 - AWS kubernetes objects overview
07:28
3
1.3 - Overview of microservices code
04:03
4
1.4 - Elasticsearch and Kibana dashboard
08:09
5
1.5 - Prometheus and Grafana overview
04:37
6
2.1 - Monolithic Architecture
09:26
7
2.2 - Microservices Architecture
12:03
8
2.3 - Microservices communication types
06:49
9
2.4 - Microservices communication styles
05:33
10
3.1 - Project description
07:35
11
3.2 - Functional requirements
07:04
12
3.3 - Non-functional requirements
07:09
13
3.4 - Design decisions
09:33
14
3.5 - Project architecture
08:52
15
3.6 - Inter-process communication
06:17
16
4.1 - Local dev tools
03:17
17
4.2 - Docker installation
02:47
18
4.3 - Redis service
10:11
19
4.4 - MongoDB service
06:19
20
4.5 - MySQL and Postgres services
07:58
21
4.6 - Rabbitmq service
06:07
22
4.7 - Elasticsearch service
13:38
23
4.8 - Kibana service
10:08
24
4.9 - Start docker compose services
06:18
25
4.10 - Kibana dashboard
04:20
26
5.1 - Section introduction
00:40
27
5.2 - Helper library description
09:19
28
5.3 - Helper library folder
10:21
29
5.4 - Github project
05:20
30
5.5 - Node npmrc file
08:35
31
5.6 - Helper interfaces
09:30
32
5.7 - Cloudinary upload method
12:07
33
5.8 - Error handlers
11:46
34
5.9 - Gateway middleware
13:43
35
5.10 - Logger
14:11
36
5.11 - Helpers file
02:43
37
5.12 - Github actions
11:37
38
5.13 - Publish helper library
06:06
39
5.14 - Update Library
04:59
40
6.1 - Section introduction
01:01
41
6.2 - Notification emails introduction
05:20
42
6.3 - Notification service setup
06:52
43
6.4 - Package json build script
09:03
44
6.5 - Add src folder and files
09:15
45
6.6 - Notification service config file
09:18
46
6.7 - Server functions
10:01
47
6.8 - Notification service health route
06:26
48
6.9 - Elasticsearch connection
12:27
49
6.10 - Start notification service
10:23
50
6.11 - Rabbitmq connection
10:45
51
6.12 - Rabbitmq introduction
09:23
52
6.13 - Rabbitmq channel methods
07:39
53
6.14 - Auth email consumer method
16:43
54
6.15 - Use auth email consumer method
09:54
55
6.16 - Order email consumer method
07:19
56
6.17 - Mail transport method
05:35
57
6.18 - Email templates - Part 1
12:38
58
6.19 - Email templates - Part 2
04:57
59
6.20 - Use send email method
11:55
60
6.21 - Add send email to order consumer
06:49
61
6.22 - Setup jest
12:31
62
6.23 - Auth consumer test - Part 1
13:43
63
6.24 - Auth consumer test - Part 2
07:12
64
6.25 - Development dockerfile
07:51
65
6.26 - Add notification service to docker compose
07:32
66
6.27 - Production dockerfile
10:51
67
6.28 - Package json scripts commands
05:51
68
6.29 - Copy emails folder into build - Part 1
08:09
69
6.30 - Push code to github
04:23
70
7.1 - API gateway architecture
04:00
71
7.2 - Gateway service folder
06:52
72
7.3 - Gateway server file - Part 1
10:13
73
7.4 - Gateway server file - Part 2
09:25
74
7.5 - Gateway server file - Part 3
07:51
75
7.6 - Gateway config file
09:11
76
7.7 - Setup gateway service elasticsearch connection
07:50
77
7.8 - Gateway health route
09:56
78
7.9 - Authentication middleware
09:33
79
7.10 - Axios Service
12:41
80
7.11 - Add gateway service to docker compose
03:40
81
7.12 - Push code to github
04:04
82
8.1 - Auth service introduction
03:36
83
8.2 - Auth service project setup
08:21
84
8.3 - Setup database connection
11:29
85
8.4 - Fix sequelize database setup
01:33
86
8.5 - Check elasticsearch connection method
04:07
87
8.6 - Security middleware function
10:21
88
8.7 - Server methods
09:07
89
8.8 - App entry file
04:35
90
8.9 - Signup schema
09:57
91
8.10 - Login schema
06:55
92
8.11 - Sequelize model basics
09:39
93
8.12 - Database table model fields
12:52
94
8.13 - Database indexes
12:42
95
8.14 - Fix AuthModel prototype error
05:48
96
8.15 - Connect MySQL to tableplus
07:14
97
8.16 - Rabbitmq connection
11:00
98
8.17 - Create user service method
09:57
99
8.18 - Auth service get methods
09:45
100
8.19 - Auth service update methods
06:40
101
8.20 - Auth service endpoints
06:07
102
8.21 - Signup controller method - Part 1
14:08
103
8.22 - Signup controller method - Part 2
11:21
104
8.23 - Auth service signup routes
12:48
105
8.24 - Auth service gateway methods
11:21
106
8.25 - Gateway signup route
08:34
107
8.26 - Get cloudinary keys
11:27
108
8.27 - Update shared library gateway method
08:56
109
8.28 - Add gateway token to shared library
08:52
110
8.29 - Auth signin controller
11:29
111
8.30 - Verify email controller
09:15
112
8.31 - Forgot password method
10:30
113
8.32 - Reset password method
08:48
114
8.33 - Change password method
08:18
115
8.34 - Current user method
11:49
116
8.35 - API gateway current user controller
04:42
117
8.36 - Refresh token method
11:44
118
8.37 - Auth unit test mock
11:28
119
8.38 - Current user read method unit test
14:39
120
8.39 - Fix jest issue
06:11
121
8.40 - Resend email test
08:15
122
8.41 - Push to github
05:26
123
9.1 - Elasticsearch and Kibana dashboard
11:57
124
9.2 - Create gigs index
12:06
125
9.3 - Add test data to gigs index
05:52
126
9.4 - Get gig by id
05:52
127
9.5 - Upload gigs data
06:58
128
9.6 - Elaasticsearch API
10:34
129
9.7 - Gigs search query - Part 1
11:19
130
9.8 - Gigs search query - Part 2
12:26
131
9.9 - Search controller
09:55
132
9.10 - Search routes
02:39
133
9.11 - API gateway auth search controller
12:52
134
9.12 - Search http test
06:58
135
9.13 - Auth seed controller - Part 1
13:29
136
9.14 - Auth seed controller - Part 2
07:41
137
9.15 - Auth seed http test
05:26
138
9.16 - Push to github
01:50
139
10.1 - Section introduction
05:43
140
10.2 - Users service setup
04:03
141
10.3 - Database connection
09:02
142
10.4 - Elasticsearch connection
06:01
143
10.5 - Server setup
06:59
144
10.6 - Buyer schema
08:02
145
10.7 - Seller schema - Part 1
10:09
146
10.8 - Seller schema - Part 2
06:04
147
10.9 - Seller validation scheme
06:32
148
10.10 - Buyer service get methods
07:55
149
10.11 - Buyer service update methods
05:20
150
10.12 - Seller service get methods
07:44
151
10.13 - Seller service update methods
15:12
152
10.14 - Buyer gateway service
05:24
153
10.15 - Seller gateway service
05:03
154
10.16 - Rabbitmq queue connection and producer methods
08:49
155
10.17 - Rabbitmq buyer message consumer method
12:48
156
10.18 - Rabbitmq seller message consumer method
09:55
157
10.19 - Rabbitmq review message consumer method
12:21
158
10.20 - Buyer controller routes
11:55
159
10.21 - Seller create and update controllers
11:26
160
10.22 - Router definition order
05:05
161
10.23 - Seller get controller
05:03
162
10.24 - Seller seed controller - Part 1
11:51
163
10.25 - Seller seed controller - Part 2
15:23
164
10.26 - Seller gateway controller
09:37
165
10.27 - Seed http test
07:01
166
10.28 - Buyer unit test
13:44
167
10.29 - Push to github
06:07
168
11.1 - Section introduction
05:04
169
11.2 - Gig service setup
06:44
170
11.3 - Gig service folders
06:04
171
11.4 - Elasticsearch add to index method
10:30
172
11.5 - Elasticsearch update and delete methods
02:48
173
11.6 - Gig schema - Part 1
10:45
174
11.7 - Gig schema - Part 2
07:40
175
11.8 - Rabbitmq queue connection
03:55
176
11.9 - Gig service get methods
12:33
177
11.10 - Gig service create method
10:38
178
11.11 - Gig service delete and update methods
08:38
179
11.12 - Update gig review method
04:53
180
11.13 - Gig queue consumer methods
10:22
181
11.14 - Create redis connection
07:08
182
11.15 - Get category from redis cache method
07:33
183
11.16 - Gig create controller
10:13
184
11.17 - Add sortid to create method
04:31
185
11.18 - Gig update controller
10:06
186
11.19 - Gig get methods
07:00
187
11.20 - Gig search methods
09:13
188
11.21 - Elasticsearch more like this method
09:50
189
11.22 - Top gigs method
12:56
190
11.23 - Test top gig method
05:15
191
11.24 - Search controller
11:51
192
11.25 - Seed data method
13:37
193
11.26 - Move seed data consumer method to server start queues method
01:31
194
11.27 - Gig seed controller
08:00
195
11.28 - Gig unit test
14:37
196
11.29 - Gateway gig controllers
13:49
197
11.30 - Gateway gig get controller
06:33
198
11.31 - Fix gig routes
01:03
199
11.32 - Gateway redis connection
04:56
200
11.33 - Gateway cache methods
11:53
201
11.34 - SocketIO setup
10:04
202
11.35 - SocketIO events
11:18
203
11.36 - Update current user controller
06:24
204
11.37 - Push to github
05:01
205
12.1 - Section introduction
04:30
206
12.2 - Chat project setup
09:10
207
12.3 - Chat service socketio information
03:41
208
12.4 - Chat service socket connection
16:44
209
12.5 - Start chat server
03:50
210
12.6 - Conversation model
07:21
211
12.7 - Message database model
08:04
212
12.8 - Rabbitmq connection
04:59
213
12.9 - Message service add message method
12:17
214
12.10 - Get chat list method
12:12
215
12.11 - Get user messages method
07:30
216
12.12 - Mark messages method
06:03
217
12.13 - Create message controller
12:58
218
12.14 - Update get health controller
09:47
219
12.15 - Chat service routes
05:42
220
12.16 - Set default createdAt date
01:36
221
12.17 - Chat create controller unit test
07:23
222
12.18 - Chat gateway service
07:38
223
12.19 - Chat gateway controller
11:40
224
12.20 - Push to github
02:42
225
13.1 - Section introduction
06:06
226
13.2 - Service setup
05:32
227
13.3 - Order model
09:14
228
13.4 - Notification schema
05:27
229
13.5 - Fix date in schema
00:53
230
13.6 - Notification service
12:33
231
13.7 - Get and create order methods
15:44
232
13.8 - Approve and cancel order methods
11:27
233
13.9 - Deliver order mthod
07:50
234
13.10 - Extension request method
12:47
235
13.11 - Update order review method
05:52
236
13.12 - Order consumer rabbitmq method
07:23
237
13.13 - Stripe account creation
08:28
238
13.14 - Create stripe intent method - Part 1
12:19
239
13.15 - Create stripe intent method - Part 2
11:21
240
13.16 - Create order controller method
08:21
241
13.17 - Update order controllers
09:56
242
13.18 - Update deliver order method
05:30
243
13.19 - Notification controllers
05:38
244
13.20 - Order routes
07:34
245
13.21 - Create order unit test
13:34
246
13.22 - Create controller order method unit test
08:34
247
13.23 - Gateway order controller and routes
13:14
248
13.24 - Fix order routes
01:01
249
13.25 - Push code to github
02:14
250
14.1 - Section introduction
02:35
251
14.2 - Service setup
04:35
252
14.3 - Postgres database connection
12:30
253
14.4 - Review database table
12:02
254
14.5 - Create review method
10:50
255
14.6 - Rabbitmq producer
06:36
256
14.7 - Get reviews methods
05:42
257
14.8 - Review controller
09:29
258
14.9 - Create review method unit test
10:16
259
14.10 - Gateway review controller
08:31
260
14.11 - Gateway current user controller unit test - Part 1
09:04
261
14.12 - Gateway current user controller unit test - Part 2
09:50
262
14.13 - Push to github
01:31
263
15.1 - Metric beats docker service
11:52
264
15.2 - Run metricbeat service
10:21
265
15.3 - Heartbeat docker service
14:23
266
15.4 - Run heartbeat service
05:01
267
15.5 - Update elasticsearch and kibana in docker compose file
14:27
268
15.6 - Create kibana service token
11:09
269
15.7 - APM server setup
11:12
270
15.8 - APM nodejs client setup
10:52
271
15.9 - Run apm server
07:12
272
16.1 - Kubernetes fundamentals
09:28
273
16.2 - Kubernetes components
08:00
274
16.3 - Kubernetes objects
13:02
275
16.4 - Minikube installation
09:46
276
16.5 - Lens IDE
08:27
277
16.6 - Minikube vs. Cloud resources
02:44
278
16.7 - Redis kubernetes objects
13:16
279
16.8 - Redis statefulsets
14:15
280
16.9 - Rabbitmq kubernetes object
12:24
281
16.10 - Update Rabbitmq kubernetes object
14:09
282
16.11 - MySQL kubernetes object - Part 1
12:40
283
16.12 - MySQL kubernetes object - Part 2
07:14
284
16.13 - Postgres kubernetes object
06:32
285
16.14 - Update postgres kubernetes objects
04:26
286
16.15 - Mongodb kubernetes object
07:16
287
16.16 - Elasticsearch kubernetes object
14:11
288
16.17 - Kibana kubernetes object
10:22
289
16.18 - Apply kibana objects
08:35
290
16.19 - Create secrets file
15:25
291
16.20 - Use secrets
07:28
292
16.21 - Import express async errors
01:15
293
16.22 - Build gateway service docker image
12:15
294
16.23 - Review service kubernetes objects
12:48
295
16.24 - Order and chat services kubernetes objects
04:37
296
16.25 - API gateway kubernetes objects
10:03
297
16.26 - API gateway ingress
12:04
298
16.27 - Dynamically set sameSite property to gateway microservice
02:23
299
16.28 - Run api gateway ingress
09:58
300
16.29 - Generate self-signed certificates
16:42
301
16.30 - Create gateway tls secret
12:07
302
16.31 - Remove whitespace from secrets
04:02
303
16.32 - Update gateway ingress
04:52
304
16.33 - Kibana ingress
09:49
305
16.34 - Kibana configmap
13:34
306
16.35 - Change kibana user password
11:15
307
16.36 - Elasticsearch heartbeat object
14:03
308
16.37 - View heartbeat on kibana dashboard
01:48
309
16.38 - Elasticsearch metricbeart object
06:04
310
16.39 - View metricbeat on kibana dashboard
03:29
311
16.40 - Port forward to access MySQl and MongoDB
07:09
312
17.1 - Jenkins docker service
06:40
313
17.2 - Jenkins agent docker service
12:15
314
17.3 - Add Jenkins agent as node
08:49
315
17.4 - Install docker on jenkins agent
08:12
316
17.5 - Install plugins
13:20
317
17.6 - Create minikube kubernetes token
13:15
318
17.7 - Review service jenkinsfile
10:54
319
17.8 - Review service jenkins pipeline
14:41
320
17.9 - Docker image pipeline build stage
10:12
321
17.10 - Reusable groovy functions
14:43
322
17.11 - Create slack webhook
06:19
323
17.12 - Create jenkins file post actions
10:46
324
17.13 - Add kubernetes stage to pipeline
09:31
325
17.14 - Test kubernetes pipeline stage
06:24
326
17.15 - Github webhooks
09:49
327
17.16 - Setup order service pipeline
06:53
328
18.1 - Microservice eks cluster architecture
13:25
329
18.2 - AWS cost
08:21
330
18.3 - Install aws cli
08:22
331
18.4 - Create VPC and subnets
09:28
332
18.5 - Tag public subnets
05:28
333
18.6 - Create NAT gateway
07:06
334
18.7 - Create security groups
08:43
335
18.8 - Add k8s objects files
03:45
336
18.9 - Create EBS CSI driver role
13:19
337
18.10 - Install aws ebs-csi driver
05:50
338
18.11 - Update rabbitmq storage class and persistent volume
05:28
339
18.12 - Create mysql rds instance
11:39
340
18.13 - Create postgres rds instance
06:37
341
18.14 - Install eksctl
07:46
342
18.15 - Eksctl introduction
07:04
343
18.16 - Create kubernetes cluster with eksctl
08:47
344
18.17 - Create kubernetes cluster nodegroup with eksctl
13:53
345
18.18 - View worker nodes
06:25
346
18.19 - Create elasticsearch cloud deployment
04:18
347
18.20 - Add elasticsearch url to secrets
10:06
348
18.21 - Create redis cluster on aws
08:32
349
18.22 - Create mongodb cloud database
06:36
350
18.23 - Apply API gateway kubernetes deployment
02:28
351
18.24 - Fix postgres connection issue
04:51
352
18.25 - Dynamically set postgres connection ssl property
02:22
353
18.26 - Add new env variable to review microservice
04:37
354
18.27 - AWS route53 hosted zones
11:35
355
18.28 - Apply gateway objects
05:44
356
18.29 - Create application load balancer controller service account
11:18
357
18.30 - Install ALB controller with helm
12:36
358
18.31 - Add annotations to gateway ingress
12:42
359
18.32 - Create gateway application load balancer ingress
11:32
360
18.33 - Create gateway external DNS service account
12:17
361
18.34 - Create gateway external DNS
11:48
362
18.35 - Run elasticsearch heartbeat and metricbeat
09:25
363
18.36 - Test endpoints
04:32
364
19.1 - Create EC2 jenkins master
09:29
365
19.2 - Install jenkins on EC2 jenkins master
13:10
366
19.3 - Access jenkins master dashboard
02:27
367
19.4 - Setup jenkins agent
08:11
368
19.5 - Setup ssh connection between jenkins master and agent
10:00
369
19.6 - Install nodejs and docker
06:28
370
19.7 - Jenkins aws service account token
10:11
371
19.8 - Create review service pipeline
07:10
372
19.9 - View review service pipeline logs
03:24
373
19.10 - Create github webhook
02:50
374
20.1 - Create EBS CSI driver role
13:19
375
20.2 - Install aws ebs-csi driver
05:50
376
20.3 - Install prometheus with helm
08:35
377
20.4 - Setup prometheus ingress
10:48
378
20.5 - Setup external DNS for prometheus
08:32
379
20.6 - Prometheus host
01:51
380
20.7 - Install grafana with helm
07:41
381
20.8 - Setup grafana ingress
06:50
382
20.9 - View grafana dashboard
08:34
383
21.1 - Setup project with vite
07:19
384
21.2 - Update vite config file
10:06
385
21.3 - Add prettier and eslint
05:29
386
21.4 - App folder structure
06:05
387
21.5 - Install tailwindcss
08:38
388
22.1 - Section introduction
00:42
389
22.2 - Create index component
06:13
390
22.3 - Create app router component
08:10
391
22.4 - React code splitting concept
08:02
392
22.5 - Button component
08:32
393
22.6 - Index header component
13:38
394
22.7 - Hero component
07:47
395
22.8 - Hero component text animation
09:30
396
22.9 - Text input component
10:58
397
22.10 - Utils service file
07:33
398
22.11 - Remove shared library
08:10
399
22.12 - Gig tabs component
12:10
400
22.13 - Gig tabs items
10:37
401
22.14 - Categories components
13:48
402
23.1 - Modal background component
06:19
403
23.2 - Alert component
09:44
404
23.3 - Dropdown component
15:20
405
23.4 - Login modal component
13:05
406
23.5 - Register modal component
07:48
407
23.6 - Setup redux store
10:17
408
23.7 - Use redux store file
07:26
409
23.8 - RTK query setup
14:19
410
23.9 - RTK create api method
06:20
411
23.10 - Authentication service
14:20
412
23.11 - Register component implementation
13:18
413
23.12 - Register component country dropdown
10:37
414
23.13 - Register component profile picture
14:43
415
23.14 - Validate registration user data
13:47
416
23.15 - Create new user method
10:42
417
23.16 - Fix RTK query issues
03:44
418
23.17 - Create auth reducer
09:54
419
23.18 - Logout reducer
07:57
420
23.19 - Login user
09:18
421
23.20 - Forgot password
10:32
422
23.21 - Reset password
13:36
423
23.22 - Reset user password testing
05:47
424
23.23 - Confirm email
10:30
425
24.1 - Home header component
11:38
426
24.2 - Check current user query
11:46
427
24.3 - App page component conditionals
11:53
428
24.4 - Logout method
13:18
429
24.5 - Add gateway service logout route
07:29
430
24.6 - Setup protected route component
10:24
431
24.7 - Display banner component
12:44
432
24.8 - Slider component - Part 1
12:26
433
24.9 - Slider component - Part 2
07:47
434
24.10 - Home gigs view component
09:21
435
24.11 - Featured sellers component
07:12
436
24.12 - Star rating component
11:10
437
24.13 - Error component
03:50
438
25.1 - Buyer dashboard route
07:07
439
25.2 - Buyer dashboard component
12:23
440
25.3 - Buyer table component
14:39
441
25.4 - Buyer reducer
07:12
442
25.5 - Settings dropdown component
13:01
443
25.6 - Detect outside click hook
12:14
444
25.7 - Fix settings dropdown items
03:31
445
26.1 - Create breadcrumb component
09:30
446
26.2 - Add new seller component
09:52
447
26.3 - Personal info component
10:35
448
26.4 - Get personal info data
15:44
449
26.5 - Seller experience fields component
10:55
450
26.6 - Seller experience fields onchange method
12:40
451
26.7 - Add and remove fields
13:03
452
26.8 - Handle fields change method
05:18
453
26.9 - Seller education fields
12:07
454
26.10 - Add other seller fields
05:14
455
26.11 - Seller service methods
11:25
456
26.12 - Seller validation
11:35
457
26.13 - Seller onCreate method
14:52
458
26.14 - Dispatch seller inside app page component
13:52
459
26.15 - Fix email verification issue
10:23
460
26.16 - Fix dynamic input text issue
15:38
461
26.17 - Update settings dropdown
03:22
462
27.1 - Add profile header component
10:30
463
27.2 - Profile header gig info
11:01
464
27.3 - Fullname update fields
12:02
465
27.4 - Display star ratings
10:13
466
27.5 - Install react fast compare package
07:15
467
27.6 - Profile tabs components
09:09
468
27.7 - Seller Context
08:43
469
27.8 - Edit language components
13:13
470
27.9 - Handle update method
12:34
471
27.10 - Use language edit fields
09:59
472
27.11 - About me component
10:31
473
27.12 - Social links component
13:27
474
27.13 - Use social links component
09:51
475
27.14 - Certificates components
10:19
476
27.15 - Certificate edit fields
17:11
477
27.16 - Description component
10:03
478
27.17 - Experience and education components
02:06
479
27.18 - Show experience and education components
08:57
480
27.19 - Skill fields component
11:48
481
27.20 - Skills component properties
12:06
482
27.21 - Create toast method
06:03
483
27.22 - Seller update method
09:05
484
27.23 - Import toast component styles
01:23
485
27.24 - View seller profile page
09:57
486
27.25 - Seller dashboard header component
14:02
487
27.26 - Header reducer
14:01
488
27.27 - Manage earnings component
14:12
489
27.28 - Manage earnings table component
09:48
490
27.29 - Manage orders component
12:14
491
27.30 - Manage orders table body
07:43
492
27.31 - Seller dashboard component
14:57
493
27.32 - Active orders table
08:18
494
27.33 - Add circular page loader to app page
12:40
495
27.34 - Update featured expert component on home page
09:05
496
27.35 - Add index component suspense fallback
02:07
497
28.1 - Add gig component
12:03
498
28.2 - Setup react quill
15:43
499
28.3 - Add category dropdown
07:40
500
28.4 - Tags input component - Part 1
14:44
501
28.5 - Tags input component - Part 2
14:38
502
28.6 - Search tags field
03:19
503
28.7 - Characters validation
06:30
504
28.8 - Cover image selection
09:52
505
28.9 - Gig validation hook
14:26
506
28.10 - Approval modal component
15:11
507
28.11 - Gig create method
13:20
508
28.12 - Gig view component
14:07
509
28.13 - Gig context
07:05
510
28.14 - Gig right package - Part 1
12:29
511
28.15 - Gig right package - Part 2
07:10
512
28.16 - Gig view seller component
14:06
513
28.17 - Gig related tags component
05:16
514
28.18 - Gig overview and about components
10:28
515
28.19 - Html parser component
10:19
516
28.20 - Gig view reviews
07:58
517
28.21 - Gigs search result components
09:34
518
28.22 - Budget dropdown component
15:50
519
28.23 - Delivery time component
12:59
520
28.24 - Gig card display item component
13:16
521
28.25 - Search gigs query
13:36
522
28.26 - Use gig display item component
14:53
523
28.27 - Fix budget min and max issue
03:47
524
28.28 - Gig paginate component
15:29
525
28.29 - Use gig paginate component
09:27
526
28.30 - Add gig card display item to seller profile
10:22
527
28.31 - Top gigs view component
14:33
528
28.32 - Add top gigs view component to home page
13:13
529
28.33 - Top gigs slide methods
10:27
530
28.34 - Gig card item component
12:10
531
28.35 - Gig card item methods - Part 1
15:07
532
28.36 - Gig card item methods - Part 2
07:59
533
28.37 - Edit gig component
16:14
534
29.1 - Main chat and chatbox components
14:30
535
29.2 - Scroll to bottom hook
07:09
536
29.3 - Message query in chatbox component
13:36
537
29.4 - Use save chat message in chatbox component
13:09
538
29.5 - Chatbox form
08:07
539
29.6 - Message dropdown component
15:20
540
29.7 - Add message dropdown to home header
07:48
541
29.8 - Fix chat conversation bug
05:20
542
29.9 - Setup socketio client
14:47
543
29.10 - Emit socket events in components
10:36
544
29.11 - Chat list component
15:27
545
29.12 - Chat list select user method
15:23
546
29.13 - Chat utils - Part 1
14:10
547
29.14 - Chat utils - Part 2
07:53
548
29.15 - Chat window component
11:35
549
29.16 - Display receiver username in chat window
12:38
550
29.17 - Chat image preview component
10:47
551
29.18 - Use chat image preview component
14:24
552
29.19 - Offer modal component
15:35
553
29.20 - Use offer modal component
07:57
554
29.21 - Chat offer component
12:39
555
29.22 - Use chat offer component
06:21
556
29.23 - Chat file component
12:46
557
29.24 - Add download file method to chat file component
03:22
558
29.25 - Send message method in chat window component
13:10
559
29.26 - Notification reducer
14:52
560
29.27 - Mobile header components
06:19
561
29.28 - Index header sidebar
13:23
562
30.1 - Checkout form Component
16:08
563
30.2 - Checkout form handle submit method
15:05
564
30.3 - Checkout component
14:09
565
30.4 - Payment intent method and requirements component
11:59
566
30.5 - Download order invoice
15:18
567
30.6 - Start order method
11:06
568
30.7 - Order component
14:37
569
30.8 - Count down timer hook
17:08
570
30.9 - Extend delivery modal
16:00
571
30.10 - Delivery work modal
15:37
572
30.11 - Order details table component
14:20
573
30.12 - Order activities component
14:04
574
30.13 - Order placed component
08:37
575
30.14 - Order extension component
15:13
576
30.15 - Order delivered component
07:58
577
30.16 - Order review component
08:54
578
30.17 - Fix review microservice bug
03:12
579
30.18 - Update buyer and seller order tables
12:09
580
30.19 - Get seller reviews
16:27
581
30.20 - Gig reviews issue
10:48
582
30.21 - Remapped review response in review microservice
03:29
583
30.22 - Order dropdown component
15:30
584
30.23 - Notifications dropdown
20:56
585
30.24 - Before window unload hook
08:46
586
31.1 - Settings and change password components
15:22
587
31.2 - Settings service
08:22
588
31.3 - Fix change password bug
09:59
589
31.4 - Fetch base query error method
07:41
590
31.5 - Gig index item component
11:07
591
31.6 - Gig index display
17:20
592
31.7 - Gig index info display
07:04
593
31.8 - NPM run build command
07:48
594
31.9 - NGINX config - Part 1
14:12
595
31.10 - NGINX config - Part 2
07:19
596
31.11 - Setup dockerfile
11:10
597
31.12 - Docker build and push image
02:39
598
32.1 - Create frontend kubernetes objects on minikube
08:32
599
32.2 - Create self-signed certificates for frontend ingress
12:59
600
32.3 - Frontend minikube ingress
06:34
601
32.4 - View frontend application on browser
02:14
602
32.5 - Push code to github
07:21
603
32.6 - Add stripe api key to jenkins
04:07
604
32.7 - Create frontend jenkins pipeline
16:29
605
32.8 - Install APM RUM package in React
03:17
606
32.9 - Make changes to frontend ENV file
05:16
607
32.10 - Install elastic apm node package
02:47
608
32.11 - Add APM server url to ENV file
04:11
609
32.12 - Create frontend kubernetes objects on AWS EKS cluster
10:18
610
32.13 - Create frontend deployment and ingress
03:47
611
32.14 - Move require to index html file in react
15:00
612
32.15 - Fix api gateway client url
10:32
613
32.16 - Update frontend ingress host
01:25
614
33.1 - Section introduction
04:56
615
33.2 - Update auth schema with new properties
06:30
616
33.3 - Add browser name and device type to signup controller
03:54
617
33.4 - Add OTP methods to auth service
10:24
618
33.5 - Send OTP from signin controller
14:33
619
33.6 - Verify OTP controller
07:27
620
33.7 - Update notification service
03:16
621
33.8 - Add verify OTP to gateway controller
06:36
622
33.9 - Update React client packages
07:08
623
33.10 - Add verify OTP component
05:55
624
33.11 - Install react device detect package
12:09
625
33.12 - Add browser name and device type to login component
05:28
626
33.13 - Add onVerifyOTP method
17:37
627
33.14 - Render verify OTP method
08:13
628
33.15 - Test verify OTP logic
06:26

Unlock unlimited learning

Get instant access to all 627 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Build a Notion Clone with React and TypeScript

Build a Notion Clone with React and TypeScript

Sources: zerotomastery.io
Master React and TypeScript by building a Notion clone. Learn to use Vite for project setup and Supabase for database management. Showcase your skills with a
7 hours 57 minutes 47 seconds
The Complete Guide to Advanced React Patterns (2020)

The Complete Guide to Advanced React Patterns (2020)

Sources: udemy
Build reusable React components without relying on if statements or more props! Use hooks & trusted advanced patterns!
6 hours 1 minute 51 seconds