You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+59-37Lines changed: 59 additions & 37 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,22 @@
1
-
JS AMAZONA
1
+
# JS AMAZONA
2
+
3
+
Welcome to my coding course to build an ecommerce website like amazon. In this course you will learn the essential tools and skills to design, develop and deploy a fully-function website like amazon using Vanilla JavaScript, HTML5 and CSS3 in frontend and Node and MongoDB in backend.
4
+
5
+
My name is Basir and I’ll be your instructor in this course. After 17 years of coding in international companies like ROI Vision in Montreal, I found my passion in teaching programming. For the last 5 years I have been tutoring 100 thousands students over my youtube channel, udemy courses and zoom online classes.
6
+
7
+
I designed this course for anyone seeking to develop a fully-functional ecommerce website like amazon. By the end of this course you’ll be able to design a responsive web template, implement a user-friendly frontend and build a scalable backend. Also you can deploy your website on cloud servers like Heroku and connect it to payment gateways like PayPal.
8
+
9
+
You need to open a code editor along with me and start coding throughout this course. I teach you:
10
+
11
+
- Web Design using HTML5, CSS3 including Semantic Elements, Flexbox, Grid System and Response Design.
12
+
- Frontend Development by Pure JavaScript including ES6 Syntax, Rendering System, Single Page App, Libraries for Date Time, drawing chart and etc.
13
+
- Backend Development using Node and MongoDB consist of ExpressJS, JWT Authentication, Mongoose object data modeling and more.
14
+
15
+
This course is for non-coders or juniors who want to be a professional web developer to get a job in 22 million job opportunities around the world. No requirement is necessary for this course and having a passion for coding is enough.
16
+
17
+
Feel free to take a look at the course preview and enroll if it is along with your ambitions.
18
+
19
+
# Table Of Content
2
20
3
21
1. Create Folder Structure
4
22
1. create root folder as jsamazona
@@ -174,26 +192,26 @@ JS AMAZONA
174
192
8. create userRoute
175
193
9. create createadmin route
176
194
20. Sign-in Screen UI
177
-
2. create SigninScreen
178
-
3. render email and password fields
179
-
4. style signin form
195
+
1. create SigninScreen
196
+
2. render email and password fields
197
+
3. style signin form
180
198
21. Sign-in Screen Backend
181
-
3. create signin api in backend
182
-
4. create route for /api/users/signin
183
-
5. create check user name and password
184
-
6. if it is not ok the return 401 error
185
-
7. install express-async-handler
186
-
8. wrap it in expressAsyncHandler
187
-
9. add error middleware in server.js
188
-
10. install Postman
189
-
11. send post request
190
-
12. test with invalid user password
191
-
13. otherwise generate token
192
-
14. install jsonwebtoken
193
-
15. set config.JWT_SECRET to somethingsecret
194
-
16. add generateToken to utils.js
195
-
17. return token
196
-
18. test with correct user and password
199
+
1. create signin api in backend
200
+
2. create route for /api/users/signin
201
+
3. create check user name and password
202
+
4. if it is not ok the return 401 error
203
+
5. install express-async-handler
204
+
6. wrap it in expressAsyncHandler
205
+
7. add error middleware in server.js
206
+
8. install Postman
207
+
9. send post request
208
+
10. test with invalid user password
209
+
11. otherwise generate token
210
+
12. install jsonwebtoken
211
+
13. set config.JWT_SECRET to somethingsecret
212
+
14. add generateToken to utils.js
213
+
15. return token
214
+
16. test with correct user and password
197
215
22. Sign-in Screen Action
198
216
1. after_render handle form submit
199
217
2. create signin request in frontend
@@ -285,15 +303,19 @@ JS AMAZONA
285
303
4. call create product function in ProductListScreen
286
304
5. redirect to edit product
287
305
35. Edit Product UI
288
-
2. create ProductEditScreen.js
289
-
3. load product data from backend
290
-
4. handle form submit
291
-
5. save product in backend
292
-
36. Delete Product
293
-
3. update ProductListScreen.js
294
-
4. handle delete button
295
-
5. rerender after deletion
296
-
37. Upload Product Image
306
+
1. create ProductEditScreen.js
307
+
2. load product data from backend
308
+
3. handle form submit
309
+
4. save product in backend
310
+
36. Edit Product Backend
311
+
1. handle form submit
312
+
2. create updateProduct
313
+
3. save product in backend
314
+
37. Delete Product
315
+
1. update ProductListScreen.js
316
+
2. handle delete button
317
+
3. rerender after deletion
318
+
38. Upload Product Image
297
319
1. npm install multer
298
320
2. create routes/uploadRoute.js
299
321
3. import express and multer
@@ -310,43 +332,43 @@ JS AMAZONA
310
332
14. call uploadProductImage()
311
333
15. create uploadProductImage in api.js
312
334
16. update server.js
313
-
38. Build Project
335
+
39. Build Project
314
336
1. create build script for frontend
315
337
2. create build script for backend
316
338
3. update sever.js to serve frontend build folder and uploads folder
317
339
4. stop running frontend
318
340
5. npm run build
319
341
6. check localhost:5000 for running website and showing images
320
-
39. Show Categories In Sidebar Menu
342
+
40. Show Categories In Sidebar Menu
321
343
1. update ProductListScreen.js
322
344
2. handle delete button
323
345
3. rerender after deletion
324
-
40. Admin Orders
346
+
41. Admin Orders
325
347
1. create Admin Order menu in header
326
348
2. create AdminOrder.js
327
349
3. load orders from backend
328
350
4. list them in the screen
329
351
5. show delete and edit button
330
352
6. redirect to order details on edit action
331
-
41. Edit Order
353
+
42. Edit Order
332
354
1. if order is payed show deliver button for admin
0 commit comments