- Install NodeJs
- Install Visual Studio Code
- Install Git
- Create React App
- Remove Unnecessary Codes
- Add Header.js
- Use Header in App.js
- Install react-router-dom in frontend
- Add header.module.css
- Use BrowserRouter inside index.js
- Update Header.js
- Update header.module.css
- Add HomePage component
- Add AppRoutes component
- Use AppRoutes in App.js
- Add data.js
- Add food Images
- Add foodService.js
- Update HomePage.js
- Add Reducer
- Load foods
- Add Thumbnails.js
- Add CSS File
- Add Image
- Add Title
- Add Favorite Icon
- Add StarRating.js
- Add Star Images
- Add CSS
- Add Origins
- Add Cook Time
- Add Price.js
- Update CSS File
- Add Search Route to AppRoutes.js
- Add Search function to foodService.js
- Use Search Inside HomePage.js
- Add Search Component
- Add CSS
- Add sample_tags to data.js
- Add getAllTags function to foodService.js
- Add Tags Component
- Add Css
- Use Tags Component in HomePage.js
- Add Tag route to AppRoutes.js
- Add getAllByTag function to foodService.js
- Use tag param in HomePage.js
- Create FoodPage Component
- Add route to AppRoutes.js
- Add getById function to foodService.js
- Update FoodPage Component
- Load food
- Create Template
- Add Css
- Create Cart Page Component
- Create css
- Add cart route to the Routes
- Create useCart Hook
- Add CartProvider to index.js
- Initialize cart with sample foods
- Update Cart Page Compnent
- useCart hook
- Add Title Component
- Add JSX
- Add CSS
- Update useCart Hook
- Add to cart
- Remove from cart
- Change quantity
- Saving To LocalStorage
- In Food Page useCart for Add to cart buttons
- In Header useCart for cart total count
- Create NotFound Component
- Add CSS
- Add Not Found To:
- Home Page
- Food Page
- Cart Page
- Fixing Search Issue
- Create backend folder
- Initializing NPM Project
- Copy data.ts to backend/src
- npm install express cors
- Create .gitignore
- Create server.js
- Add & Config Express
- Add & Config Cors
- Add Food Router
- Add jsconfig.json
- Add Apis
- Add & Config Express
- npm install nodemon
- Add dev Script into the package.json
- npm run dev
- Add axios package
- axiosConfig.js file
- Connect food service to the Apis
- Create User Router
- npm install jsonwebtoken
- Add Login Api
- Add sample_users to data.js
- Add httpStatus.js
- Add generateTokenResponse function
- Add User Router To server.js
- Create user service
- Add getUser function
- Add login function
- Add logout function
- npm install react-toastify
- Create useAuth hook
- Add user state
- Add Login function
- Add logout function
- Create LoginPage component
- Add to AppRoutes.js
- Create Custom Components
- Input Container
- CSS
- Input
- CSS
- Button
- CSS
- Input Container
- Add useAuth to the Header component
- Install Mongo Db Community
- Windows
- Macos
- Install mongoose
- Add User Model
- Add Food Model
- Add .env file
- Install dotenv
- Add MONGO_URI
- Add to .gitignore
- Add database.config.js
- Connect to mongodb
- Seed Users
- Install bcryptjs for password hashing
- Seed Foods
- Update user.router ( Using UserModel)
- Install express-async-handler
- Login Api
- generateTokenResponse
- Update food.router (Using FoodModel):
- Root Api ( Loading all foods )
- Tags api
- Search Api
- FoodId api ( Finding food by id )
- Fix Image url in:
- Thumnails compnent
- Food Page component
- Cart Page component
- Add Register Page Component
- Add to AppRoutes
- Add Link to login page
- CSS
- Add '/register' api to user.router.js
- Add register function in userService
- Add register function in useAuth hook
- Add to Register page
- Create useLoading hook
- Add LoadingProvider to index.js
- Create Loading component
- Add to App.js
- Add Image
- CSS
- Create Loading Interceptor
-
Fixing Loading problem
-
Create Checkout Page component
- Create AuthRoute
- Add to Routes
- Add css
- Create Order Items List
- Create Maps Component
- Install leaflet & react-leaflet
- Adding images to public folder
- Fixing header menu problem with map
-
Create Order router
- Create auth middleware
- Add UNAUTHORIZED http statuss
- Add to Order router
- Create Order Model
- Create Order Status
- Add to server.js
- Create auth middleware
-
Connecting Frontend to Backend
- Create order service
- Add create function
- Create Auth interceptor
- Add to index.js
- Create order service
- Create PaymentPage component
- Add to Routes
- CSS
- Update Order Router
- Add newOrderForCurrentUser
- Add pay api
- Create PaypalButtons Component
- npm install @paypal/react-paypal-js
- Add clearCart to useCart
- Get clientId
- Create Sandbox user for testing
- Create Order Track Page
- Add To Routes
- CSS
- Create DateTime Component
- Complete
- Map
- Fixing Marker Icon Issue
- Complete
- Order Router
- Add ‘track/:id’ api
- Add to orderService
- Add ‘track/:id’ api
- Create ProfilePage Component
- CSS
- Update Profile
- ChangePassword component
- Update useAuth hook
- Add updateProfile function
- Add changePassword function
- Update userService
- Add updateProfile funciton
- Add changePassword function
- Update User Router
- Add updateProfile api
- Add changePassword api
- Create Orders Page
- Add To Routes
- CSS
- Update Order Service
- Add getAll function
- Add getAllStatus function
- Update Order Router
- Add
/:status?
- Add
/allStatus/:id
- Add