
Create and manage backend models by defining a Mongoose schema for items, then implement a post route to save new items to the database using async/await, and test with Postman.
Refactor app.js by moving routes into a dedicated routers folder with an item routes file, export the router, and use async/await for items get and post endpoints.
Learn to configure cors for cross-domain communication by installing and applying a cors middleware, then setting options to allow all requests between the front end and back end.
Create a new post route for registering users, hash the password with decrypt-js using a 10 salt, and save the user with email and is admin fields.
Implement get methods to fetch all carts and a single user cart, populating the user, cart item, and item category, and verify the endpoints using Postman.
Github link to fully completed course : https://github.com/youkharoufi/LandFox
Create a category model and a category service to handle http requests to the backend, using an api url and HttpClient for getting categories and for create, update, and delete.
Continue implementing the category form by adding and updating categories with two functions, via the category service, and show a snack bar confirmation after each action.
Delete an admin item using an Angular Material dialog and an item-dialog component, confirm the action, and refresh the list after deletion.
Build an item form supporting create and edit modes, load existing item data from the route id, and submit updates or new items with category dropdown and snackbar feedback.
Install animate.css with npm, wire the styles in angular.json, and add a fox head animation in the Angular template using a 3-second entrance.
Create a user model and service, implement login and sign up HTTP calls, store user info and admin flag in local storage, and route to the shop page.
Fixes a sign-up bug by updating the user service logging method to correctly handle the admin flag, setting local storage when admin is defined and avoiding it when undefined.
Create a login form using angular material, employing a form group to validate email and password, display 'invalid email or password' error, and offer forgot password and create account links.
Generate a new user component and implement a sign up form by adapting the login HTML, using form builder and validators. Sign up redirects to the login page after registration.
Create a users list component, retrieve all users from the user service, and render an Angular Material table with email, password hash, admin status, plus edit and delete actions.
Implement a delete user workflow with an Angular Material dialog: click delete opens a modal, passes the user email, and on confirmation deletes the user and refreshes the list.
Implement edit and create user workflows in an Angular form by reading the URL id, fetching the user, populating fields, and navigating to the user list with a snack bar.
Design a cart model with cart item and cart item detail submodels. Implement a cart service using local storage to initialize and manage items with a behavior subject.
Build a fullsatck MEAN e-commerce Application. But what is a MEAN Stack ?
Well MEAN stands for : MongoDB, Express, Angular and Node js. To sum up, the MEAN stack is a connected software that we will create coded in Javascript and more precisely with Angular as a frontend framework and Node js as a backend framework.
You will learn about file upload, angular pipes for filtering data, integrating angular material components to your api, communicating with a database through mongoose, and much more ! This course covers in detail every aspect of creating a backend with Node js. It also teaches you how to test your routes by using a mock api software named Postman. Further more, you are to discover everything there is to know about a frontend coded with Angular.
About the UI Library you will be using in this course : Angular material is a library created by google in 2014 and still in use with many updates until today. I had the opportunity to use it in my professional career. It contains all sorts of components from loading spinners, to modal or pop-ups, even snackbars. This course targets developers from different levels, from beginners to advanced.
You are expected to know the very basic terms of Javascript, Angular and Node js such as "Services", "Components", "npm packages". But if you are not familiar with these terms you can learn them on the go.