
Build two apps using React and TypeScript on Mern stack, featuring a shopping cart with Redux Toolkit and a story app with authentication, file uploads, and create-read-update-delete operations.
Explore app features by managing a manga store cart: sorting, adding, removing items, and checkout with notifications. Learn authentication, error handling, and protected routes across two apps.
Set up a React app with TypeScript, React Router 6, Redux Toolkit, and JSON Server, creating a typed Redux store, routes, and a mock API for data.
Style the home page with Bootstrap and React icons, implement a search filter and sorting by price and title, and wire up the responsive layout and cart button.
Implement a Redux Toolkit shop slice to add items to the cart, track item quantity and total price, and expose updates to the navbar and cart page.
Implement a cart item component with actions to increase, decrease, remove, and clear items, and add animated notifications for purchase success or empty cart warnings on cart page.
Set up an express API in a new project, connect to MongoDB with mongoose using env variables, run with nodemon, and verify a hello from node server response at http://localhost:5000.
Create a mongoose user model and build register, login, and account controllers, then protect routes with bcrypt, json web token, and express-validator validations.
Create a stories API with mongoose, defining a story schema (author, title, text, poster, views) and implement CRUD controllers and routes secured by protect-off and token authentication.
Set up an authentication slice with redux toolkit, configure axios, create async thunks for register and login, store the token in local storage, and navigate on success.
Explore token management, user authentication, and logout flows in a React 2025 app, including axios request interception, local storage tokens, and conditional rendering of protected routes.
Create and fetch stories with poster uploads, display them on dedicated pages, and protect the write route for authenticated users.
Learn to implement author-based update and delete for stories in a React and TypeScript MERN app, using async thunks, axios calls, and dynamic routing to manage story data.
This course will involve building two advanced applications from scratch.
Project 1:
We will create a React application using TypeScript. We will set up React Router Dom 6 and establish a Redux Toolkit store with dummy data from a JSON file. Alongside this, we are going to define interfaces and create custom hooks to streamline data management and interaction. Configuration of a JSON server to handle the data will be included. Following this, we will integrate API calls and manage data in Redux Toolkit using createApi and useDataQuery. Additionally, we will implement search, filter, and sorting functionalities on the home page. Furthermore, we will perform cart actions such as adding items to the cart and getting the cart total, manage cart item component actions (increase and decrease quantity, clearing the cart, and remove items from the cart), and integrate animated notifications.
Project 2:
We will begin by configuring Express with MongoDB using Mongoose. We will emphasize secure user authentication by utilizing JWT, Bcrypt, and Express-Validator. Progressing, we will implement robust CRUD operations for the Story Model, ensuring seamless data management. By integrating Multer, we will enable effortless file uploads within the application. Shifting focus to the front-end, we will meticulously set up React (without TypeScript) with React Router Dom 6, enabling efficient routing within the application. Moreover, we will handle token authentication, manage error responses adeptly, and empower users to create stories with file uploads, enhancing interactivity. Finally, we will conclude the app by implementing update and delete functionalities for stories and incorporating author-based access control to maintain data security and integrity.