
Build a full inventory management system with Spring Boot and Angular, featuring a dashboard, monthly charts, transaction management, and CRUD for categories, products, and suppliers.
Initialize a spring boot backend project via start.spring.io with java, maven, and core dependencies like spring web, jpa, and mysql; add jwt and model mapper for auth and dto mapping.
Configure a Spring Boot database connection in application.properties by setting port 5050, enable update ddl, and create event db. Organize into controller, service, entity, dto, exceptions, security, enums, repository, config.
Configure a model mapper in a Spring Boot project to map entities to DTOs by exposing a bean in config class and enabling fields matching, private access, and standard matching.
Define and implement enums for user roles, transaction types, and transaction statuses to model admin and manager roles, purchase, sale, return to supplier, and item states in an inventory system.
Defines core inventory entities—users, categories, suppliers, products, and transactions—using Spring Boot, JPA, and Lombok; establishes one-to-many and many-to-one relationships, enums, and field validations.
Create repository interfaces for category, product, supplier, and user using JPA, including a find by email method, and a transaction repository with month/year queries and a search across transaction fields.
Define and apply DTOs for register, login, and transaction requests, plus product, category, supplier, and user details, with a generic response wrapper for paginated data.
Define and integrate custom exceptions and a global exception handler in a spring boot and angular inventory app, enabling clear 404, 400, 401, and 403 responses.
Configure spring security for the inventory app by implementing a custom user details service and a JWT-based authentication flow, enforcing access via roles and a dedicated auth filter.
Implement a complete user service for an inventory app, with register, login, update, delete, and get current user, plus retrieval of user transactions using jwt and password encoding.
Build and secure an auth and users controller in Spring Boot: implement register and login with validation, manage users with admin-only access, and expose endpoints for transactions and current user.
Test the users API with Postman by registering users, logging in, and retrieving tokens. Explore authorization for admin and manager roles, update and delete users, and view current logged-in user.
Implement a category service in a Spring Boot inventory app, providing create, read (all and by id), update, and delete operations using a model mapper and repository.
Implement a category controller for the inventory system with endpoints to create, read all, read by id, update, and delete categories; enforce admin access and input validation.
Test the category API with Postman by creating, retrieving, updating, and deleting categories using admin authorization and bearer tokens in a SpringBoot and Angular inventory system.
Learn to implement a complete supplier service with add, update, get by id, get all, and delete operations, using a supplier repository and mapping to a supplier class.
Implement a supplier controller with endpoints under /suppliers, using a supplier service to add, get all, get by id, update, and delete suppliers, with admin and manager role constraints.
The lecture demonstrates supplier api testing with Postman, including adding, retrieving by id, updating, and deleting suppliers via a bearer token and json payloads.
Implement a product service that saves, updates, retrieves, and deletes products using a product DTO, handles multipart image uploads with UUID naming, validates image files, and assigns categories via repository.
Build a product controller for inventory management that enables admins to create, update, fetch, and delete products using multipart uploads and category-linked product details.
Test and validate the product API end-to-end using postman: save, update, and delete products with multipart image uploads, authorization tokens, and category handling in a SpringBoot and Angular inventory app.
Implement a transaction service that handles restock, sale, return to supplier, and transaction queries, including by month and year, with validation, status updates, and price calculations.
Create a transaction controller to manage purchase, restock, sale, and supplier returns, support paginated queries with search, and fetch by id or month and year, with status updates.
Learn to test a full inventory transaction API by performing purchase, sell, and return workflows, validating authorization, request bodies, and transaction status across IDs and the month and year.
Create and bootstrap an Angular frontend named Ms Angular, install the Angular CLI, include crypto-js for token encryption, and set up a dashboard with swimlane ns charts for transaction visualization.
Create an Angular inventory app by generating an API service and guard, then scaffold components such as dashboard, profile, products, category, supplier, login, register, sale, purchase, and transaction details.
Designs an angular api service to call the backend and manage http headers for token authentication. Enforces role-based access by distinguishing admin and user pages, encrypts tokens with crypto-js, stores in local storage, and provides endpoints for users, categories, suppliers, products, and transactions.
Implement a guard service that protects admin and authenticated routes by using canActivate, injecting an API service and router, and redirecting unauthenticated users to login with a return URL.
Create a dashboard layout with a left sidebar and main content area in an Angular app, using router outlet and router links, with authentication-based navigation for categories, products, and suppliers.
Register and protect login, register, category, supplier, product, and transaction routes with a canActivate guard, using admin-only controls and a default login redirect.
Implement a registration page in Angular that collects name, email, phone number, and password via the form module and API service, validating all fields and navigating to login on success.
Create an Angular login page by reusing registration form with email and password, calling the API login, and navigating to the dashboard after encrypting and storing the token and role.
Are you ready to take your skills to the next level by building a full-fledged inventory management system? This hands-on course will guide you step-by-step in creating a powerful, scalable, and secure application using Spring Boot and Angular.
What You'll Learn
Backend Development: Dive deep into Spring Boot with JPA, MySQL, and robust security using Spring Security and JWT.
Frontend Development: Build a dynamic user interface in Angular, integrating crypto-js for added security, and visualize data with charts and dashboards.
API Testing with Postman: Master API testing techniques to ensure your application is bug-free and secure.
Database Design: Learn how to design and implement database relationships for scalable and efficient inventory management.
Design Patterns: Use modern design patterns for maintainable and high-quality code.
Who Should Take This Course?
Aspiring full-stack developers eager to create enterprise-grade applications.
Backend or frontend developers wanting to learn integration between Spring Boot and Angular.
Professionals aiming to build secure systems with authentication and authorization.
Why This Course?
Throughout the course, you’ll work on a real-world project, designing and developing a feature-rich inventory management system from scratch. By the end, you’ll have a complete project to showcase in your portfolio, a deep understanding of Spring Boot and Angular, and the confidence to build scalable, secure applications.
Enroll Now
Join thousands of learners already mastering the art of full-stack development. This course is your gateway to a rewarding career in software development.