- Create React App
- Create Git Repository
- List Products
- create products array
- add product images
- render products
- style products
- Add routing
- npm i react-router-dom
- create route for home screen
- create router for product screen
- Create Node.JS Server
- run npm init in root folder
- Update package.json set type: module
- Add .js to imports
- npm install express
- create server.js
- add start command as node backend/server.js
- require express
- create route for / return backend is ready.
- move products.js from frontend to backend
- create route for /api/products
- return products
- run npm start
- Fetch Products From Backend
- set proxy in package.json (Frontend)
- npm install axios
- use state hook
- use effect hook
- use reducer hook
- Manage State By Reducer Hook
- define reducer
- update fetch data
- get state from useReducer
- Add bootstrap UI Framework
- npm install react-bootstrap bootstrap
- update App.js
- Create Product and Rating Component
- create Rating component
- create Product component
- Use Rating component in product component
- Create Product Details Screen
- fetch product from backend
- create 3 columns for image, info and action
- Create Loading and Message Compnents
- create loading component
- use spinner compomnents
- create message component
- create utils.js to define getError function
- Implement Add to Cart
- Create React Context
- Define Reducer
- Create Store Provider
- Implement Add To Cart Button Click Handler
- Complete Add To Cart
- check exist item in the cart
- check count in stock in backend
- Create Cart Screen
- create 2 column
- display items list
- create action column
- Complete Cart Screen
- click handler for inc/dec item
- click handler for remove item
- click handler for checkout
- Create Signin Screen
- create sign in form
- add email and password
- add signin button
- Connect To MongoDB Database
- create atlas mongodb database
- install local mongodb database
- npm install mongoose
- connect to mongodb database
- Seed Sample Data
- Create Product Model
- create user model
- create seed route
- use route in server.js
- seed sample product
- Seed Sample Users
- create user model
- seed sample users
- create user routes
- Create SignIn backend API
- create signin api
- npm i jsonwebtoken
- define generateToken
- Complete SignIn Screen
- handle submit action
- save token in store and local storage
- show user name in header
- Create Shipping Screen
- create form inputs
- handle save shipping address
- add checkout wizard bar
- Create Signup Screen
- Create input forms
- handle submit
- create backend api
- Create Payment Screen
- create input forms
- handle submit
- Create Place Order Screen
- show cart items, payment and address
- handle place order action
- create order create api
- Implement Place Order Action
- handle place order action
- create order create api
- Create Order Screen
- create backend api for order/:id
- fetch order api in frontend
- show order information in 2 columns
- Pay Order By PayPal
- generate paypal client id
- create api to return client id
- install react-paypal-js
- use PayPalScriptProvider in index.js
- use usePayPalScriptReducer in Order Screen
- implement loadPaypalScript function
- render paypal button
- implement onApprove payment function
- create pay order api in backend
- Display Order History
- create order screen
- create order history api
- use api in the frontend
- Create Profile Screen
- get user info from context
- show user information
- create user update api
- update user info
- Publish To Heroku
- create and config node project
- serve build folder in frontend folder
- Create heroku account
- connect it to github
- Create mongodb atlas database
- Set database connection in heroku env variables
- Commit and push
- Add Sidebar and Search Box
- add sidebar
- add search box
- Create Search Screen
- show filters
- create api for searching products
- display results
- Create Admin Menu
- define protected route component
- define admin route component
- add menu for admin in header
- Create Dashboard Screen
- create dashboard ui
- implement backend api
- connect ui to backend
-
Notifications
You must be signed in to change notification settings - Fork 0
AdhamSewelam/E-commerce
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published