تشغيل تلقائي
اكمال تلقائي
الدرس السابق
اكتمل واستمر للتالي
NodeJS - Build a Full E-Commerce RESTful API
Section 01 : Course Overview (نظرة عامة)
1-Course Outline (15:09)
2-Live Demo - APIs That We Will Build (9:03)
3-Live Demo - Front-end Website To Understand All Features That We Will Build (24:05)
4-Join To Our Online Classroom (2:27)
5-How To Use Source Code (4:26)
6-If You Face a Problem (2:52)
Section 02 : How Web Work ? (اساسيات مهم تكون فاهمها)
7-How Web work (7:28)
8-Http Request Response Example (3:43)
9-Front-End vs Back-End (2:56)
10-Static vs Dynamic websites vs API (3:51)
11-Advantage Of Building API (4:29)
Section 03 : Tools and Environment (تجهيز بيئة العمل)
12-Let's install NodeJS (3:09)
13-Installing Code Editor and Some Useful Extensions (3:22)
14-Installing Postman to Test Our API (2:02)
Section 04 : Preparing Express Server and MongoDB (تجهيز السيرفر والداتا بيز)
15-Create App Server Using Express (5:05)
16-Use nodemon to Watch the Changes (2:52)
17-Environment Variables And gitignore (4:16)
18-Logging Our API Requests (3:08)
19-Mongodb Atlas And Compass (11:07)
20-Installing Mongoose and Connect to Our Database (7:37)
21-Some Information about Mongodb (2:49)
22-Make our First Hit to Our Database (10:32)
23-Project Folders Structure (11:18)
24-Express Middleware Explanation (1:51)
25-Summary + Source Code (1:51)
Section 05 : Categories CRUD Operations (التصنيفات الرئيسية)
26-Category Schema and Model (7:23)
27-Create Category (10:59)
28-Use Async Await Syntax (6:44)
29-Get All Categories (4:38)
30-Categories Pagination (5:42)
31-Get Specific Category (5:23)
32-Update Specific Category (6:44)
33-Delete Category (3:23)
34-Summary + Source Code (1:04)
Section 06 : Advanced Error Handling & Adding Validation Layer (التعامل مع الايرورز)
35-Error Handling Overview (3:37)
36-Catch Errors from Express using Error Handling Middleware (4:02)
37-Handle Unhandled Routes and Send Error to Error Handling Middleware (5:59)
38-Make our Reusable Error Class (12:46)
39-Refactor our Global Error Middleware (2:39)
40-Refactor 404 Not Found (4:23)
41-Handle Errors in Development and Production ENV (6:41)
42-Handle Errors Outside Express (Unhandled Rejections) (9:50)
43-Validation Layer Benefits (5:57)
44-Implementing Validation Layer (6:21)
45-Refactor Validation Layer (9:32)
46-Implementing Remains Validation Rules on Category Handlers (8:42)
47-Summary & Source Code (1:47)
Section 07 : Subcategory & Brand CRUD (التصنيفات الفرعية والبراندات)
48-Introduction (1:21)
49-Sub Category Schema And Model (7:13)
50-Use Eslint with Some Airbnb Configurations (5:51)
51-Create Sub Category Handler, Validation and Route (12:42)
52-Get Specific Subcategory and Subcategories List Handlers, Validations and Routes (6:47)
53-Update and Delete Subcategory handlers, Validations and Routes (8:21)
54-Populate Category Name (Optional) (7:42)
55-Get All Subcategories for Specific Category (Nested Route) (12:18)
56-Create Subcategory on Category (Nested Route) (9:48)
57-Brands CRUD Operations (10:22)
58-Test Brands On Postman (3:35)
59-Summary + Source Code (0:59)
Section 08 : Product CRUD Operations (المنتجات)
60-Introduction (1:30)
61-Product Schema And Model (15:45)
62-Product Service (6:36)
63-Product Validations And Router (11:58)
64-Test Product CRUD On Postman (14:17)
65-Validate Category Existence in Our DB (10:33)
66-Validate Subcategories Existence in Our DB (13:24)
67-Validate That Subcategories Belong to Category (19:51)
68-Insert And Delete Products Dummy Data Using Seeder Script (8:12)
69-Products Filtration Part-1 (16:18)
70-Products Filtration Part-2 (13:03)
71-Apply Sorting Feature On Products (11:38)
72-Apply Field Limiting Feature (8:25)
73-Apply Search Feature (5:57)
74-Refactor Our ApiFeatures (14:22)
75-Return Pagination Result on the Response (14:18)
76-Apply Api Features on Other Route Handlers (10:40)
77-Delete Factory Handler (9:39)
78-Update Factory Handler (14:52)
79-Create Factory Handler (7:25)
80-Get One Factory Handler (4:32)
81-Get All Factory Handlers (10:27)
82-Use Mongoose Query Middleware to Populate Category in Product (5:47)
83-Summary (1:12)
Section 09 : Upload Images and Image Processing (التعامل مع الصور)
84-Introduction (2:18)
85-Upload Single Image Using Multer (9:24)
86-Multer Storage Configuration (13:04)
87-Allow Only Images (7:16)
88-Use Sharp Lib For Image Processing (18:30)
89-Save Image name into Database And Apply Upload Image into Update Category (11:48)
90-Upload Brand image (14:02)
91-Return Image URL On The Response (20:26)
92-Upload Mix Of Product Images (27:49)
93-Return Product Images URL into The Response (5:02)
94-Refactor Upload Mix of Images Middleware (8:49)
95-Summary + Source Code (1:39)
Section 10 : Authentication And Authorization (مهم جدا تكون مركز)
96-Introduction (1:15)
97-Authentication vs Authorization (3:31)
98-User Schema And Model (5:10)
99-User Service And Route (10:19)
100-Test User CRUD On Postman (7:17)
101-User Validation Layer (13:22)
102-Apply Password Confirmation (4:20)
103-Hash User Password On Create Handler (5:46)
104-Hash User Password On Update Handler (10:20)
105-Enhance Change Password Handler (15:14)
106-Enhance User Validation (1:23)
107-How JWT Work with Authentication (4:27)
108-Signup (19:40)
109-Login (14:37)
110-Protect Handler Part One: ( Check If Token Exist ) (15:03)
111-Protect Handler Part Two ( Verify Token ) (15:13)
112-Protect Handler Part Three ( Check If User For Token Exist ) (4:06)
113-Protect Handler Part Four ( Check If User Change Password After Token Created ) (15:13)
114-Postman Configuration (9:13)
115-Authorization User Permissions (12:59)
116-Protect Other Routes (6:28)
117-Forgot Password (Overview) (3:39)
118-Forgot Password: Check If User Exists (5:16)
119-Forgot Password: Generate Random Reset Code (15:25)
120-Forgot Password: Send Reset Code Via Email (32:10)
121-Forgot Password: Verify Reset Code (11:13)
122-Forgot Password: Reset Password (12:57)
123-Get Logged User data (9:25)
124-Update Logged User Password (12:29)
125-Update Logged User Data (8:39)
126-Deactivate Logged User (5:20)
127-Summary + Source Code (2:37)
Section 11 : Reviews, Wishlist and User Addresses (التقييمات والمفضلة وعناوين المستخدم)
128-Introduction (1:27)
129-Review Schema And Model (4:34)
130-Some Info About Collections Relationships (12:28)
131-Review Handlers And Routes (8:10)
132-Test Reviews CRUD On Postman (10:48)
133-Review Create, Update And Delete Validation (26:46)
134-Populate User On Review (3:38)
135-Virtual Populate: Populate Reviews On Product (12:04)
136-Fix Update Review Issue After User Population (5:13)
137-Apply Nested Route (Products/Reviews) (19:51)
138-Calculate Ratings Quantity And Average When Create Review (27:46)
139-Calculate Ratings Quantity And Average When Update, Delete Review (8:52)
140-Wishlist Overview (3:29)
141-Add Product To Wishlist Handler And Route (11:52)
142-Remove Product From Wishlist Handler And Route (5:08)
143-Get Logged User Wishlist (6:43)
144-User Addresses Handlers And Routes (12:20)
145-Test User Addresses (6:20)
146-Summary + Source Code (3:48)
Section 12 : Coupons And Shopping Cart (سلة المنتجات وكوبونات الخصم)
147-Introduction (2:07)
148-Coupon Schema And Model (3:06)
149-Coupon Service And Route (7:09)
150-Refactor Mount Routes Middleware (3:06)
151-Test Coupons CRUD On Postman (6:07)
152-Shopping Cart Schema And Model (5:19)
153-Add Product To Shopping Cart Part-1 (16:18)
154-Add Product To Shopping Cart Part-2 (12:21)
155-Add Product To Shopping Cart Part-3 (9:52)
156-Get Logged User Shopping Cart (4:53)
157-Remove Specific Cart Item (7:58)
158-Clear Logged User Shopping Cart (3:15)
159-Update Cart Item Quantity (10:33)
160-Apply Coupon On Shopping Cart (15:15)
161-Shopping Cart Items Recap (2:12)
162-Summary + Source Code (1:24)
Section 13 : Cash, Online Orders and Payment And Deployment (الطلبات والدفع الالكتروني والرفع)
163-Order Schema And Model (9:33)
164-Create Cash Order Overview (8:32)
165-Create Cash Order Part-1 (8:21)
166-Create Cash Order Part-2 (12:49)
167-Test Cash Order (13:24)
168-Get All And Specific Orders (10:33)
169-Populate User And Order (4:04)
170-Update Order Status (Admin) (10:19)
171-Cash Order Recap (2:02)
172-Payment Providers Overview (6:03)
173-Stripe Dashboard Overview (8:17)
174-Create Stripe Checkout Session (22:52)
175-Test Checkout Session And Edit Checkout Page Branding (10:50)
176-Prepare Our App To Deploy (Enable CORS And Install Compression) (8:20)
177-Deploy Node App To Heroku (18:22)
178-Implement Stripe Webhook And Create Order (28:50)
179-Fix Card Order Issue (6:07)
180-Summary + Source Code (2:36)
Section 14 : Security Best Practice And Recommendations ( وسائل الامان - مهم جدا )
181-Introduction (3:21)
182-Set Request Size limit (5:07)
183-Take Precautions Against Brute-Forcing By Apply Rate Limiter (11:08)
184-Use Anti-CSRF Tokens (9:49)
185-Prevent HTTP Parameter Pollution (12:36)
186-Data Sanitization (16:43)
187- Return Only Necessary Fields (9:37)
188-Error And Exception Handling (2:40)
189-Platform Security (5:22)
Section 15 : Knowing Nest and it's parts ( مقدمة تعريفية عن نست فريم ورك )
190-What is Nestjs Framework (11:00)
191.Install Nestjs CLI and Generate our First Nest Application (7:57)
192.First Look at Nestjs Application Architecture (16:34)
193.Http Implementation Inside Nestjs (5:08)
194-What is the Nestjs Parts (2:42)
195-What is the Root Module (11:03)
196-Request Response Cycle (9:09)
197-Create our First Controller (13:02)
198-What is Resource Controller (11:47)
199-Request Object (4:59)
200-Route Parameters (6:51)
201-Request Body (3:42)
202-Status Code and Response (10:55)
203-Request Payload (DTO) (6:05)
204-Update DTO (7:49)
205-Find, FindOne and Create Logic (11:28)
206-Update and Delete Logic (11:46)
207-Summary (3:43)
Section 16 : Javascript Refresher (مراجعه جافا سكربت)
208-Intro (1:47)
209-Var ,Let,Const (9:35)
210-Arrow Function (6:45)
211-Export and Import (10:55)
212-Classes (15:55)
213-Spread Operators (11:05)
214-Destructuring (7:46)
215-Primitive Types (5:32)
215-Array Functions (5:28)
216-Array Simple Methodes(Slice,Splice,Reverse,Concat,Join) (10:57)
217-Array Methodes(Fillter,Find,Sort,Reduce) (19:12)
218-Higher Order Functions (15:56)
219-Promise,Asynchronous,Synchronous (16:27)
220-Multi Promise (9:35)
221-Async ,Await (12:20)
155-Add Product To Shopping Cart Part-3
محتوي هذا الدرس مغلق
لو قمت بالاشتراك مسبقا
تحتاج الي تسجيل الدخول
.
اشترك في هذه الدوره لفتحها