The Inventory Management System is a Java-based project designed to efficiently manage inventory operations. This project aims to apply and challenge my Java skills, creating a robust and professional-grade application. The system includes functionalities such as managing products, categories, orders, and movements (entries and exits) of inventory.
- Apply and solidify Java programming skills.
- Develop a comprehensive understanding of Spring Boot, JPA, and RESTful APIs.
- Create a professional-grade application suitable for real-world scenarios.
- Product Management: Manage products including creation, updates, and deletion.
- Category Management: Organize products into categories.
- Order Management: Handle customer orders and track order statuses.
- Inventory Movements: Register and track inventory entries and exits.
The project is structured based on a detailed class diagram that outlines the application.
For more details, see the classDiagram here.
- Java 17+: Programming language used for building the application.
- Spring Boot: Framework for creating stand-alone, production-grade Spring-based applications.
- Spring Data JPA: Simplifies data access with JPA.
- Hibernate: Object-relational mapping framework used by Spring Data JPA.
- RESTful APIs: Interface for interacting with the system.
- H2 Database: In-memory database for development and testing.
- MySQL: Database for production.
- Maven: Build automation tool used for project management.
Contributions are welcome! If you have suggestions for improvements or find any issues, please feel free to open a Pull Request. Your feedback and contributions are highly valued and appreciated.
This project is licensed under the MIT License. See the LICENSE file for details.
Special thanks to everyone who contributed to this project, directly or indirectly. Your support and feedback have been invaluable.