An advanced tool designed to simplify the complexities of inventory management.
Explore the docs Β»
View Demo
Β·
Report Bug
Β·
Request Feature
Table of Contents
video.mp4
The Inventory Management System is a desktop application crafted to streamline inventory management for small to medium-sized businesses. It features a user-friendly interface designed to simplify the tracking and organization of products, categories, suppliers, and inventory transactions, all while providing key insights for effective decision-making.
-
Dashboard Overview
- Comprehensive financial summary, including real-time sales, costs, and profit insights
- Alerts for low stock levels
- Quick access to recent transactions for up-to-date monitoring
-
Product Management
- Full suite of CRUD (Create, Read, Update, Delete) operations
- Seamless product association with categories and suppliers
- Real-time stock level monitoring
- Easy tracking of units, pricing, and product details
-
Category Management
- Efficient product categorization and organization
- Management of category-supplier relationships
- Reporting and insights based on product categories
-
Supplier Management
- Centralized supplier information management
- Tracking of supplier-product relationships
- Integrated contact management for streamlined communication
-
Inventory Transactions
- Sales tracking with revenue insights
- Purchase management with cost monitoring
- Spoilage tracking for accurate inventory maintenance
Monitor your business metrics at a glance with our intuitive dashboard.
Efficiently manage your product inventory with detailed tracking.
Organize products into categories for better inventory control.
Keep track of your suppliers and their associated products.
Record and track all inventory movements with ease.
The application follows a layered architecture:
- View Layer: Swing-based user interface components providing intuitive interaction
- Controller Layer: Handles user input and coordinates between View and Service layers
- Service Layer: Implements core business logic and transaction management
- Repository Layer: Manages data access and persistence using Hibernate/JPA
- Model Layer: Contains domain entities and business rules
- Database Layer: Apache Derby database for reliable data storage
- Swing-based user interface components
- Responsive panel layouts
- User input handling
- Real-time updates
- User input processing
- View-Service coordination
- Input validation
- Error handling
- Business logic implementation
- Transaction management
- Data validation
- Cross-cutting concerns
- Data access interfaces
- Hibernate/JPA implementation
- Transaction handling
- Query optimization
- Entity classes with JPA annotations
- Business logic validation
- Relationship mappings
- Data integrity rules
- Java 11
- Swing (UI Framework)
- Hibernate/JPA (Persistence)
- Apache Derby (Database)
- Maven (Build Tool)
- JUnit & Mockito (Testing)
- Java JDK 11 or higher
- Maven 3.6 or higher
- Apache Derby Database
-
Clone the repository
git clone https://github.com/realYushi/Inventory-Management-System.git
-
Navigate to project directory
cd Inventory-Management-System
-
Build the project
mvn clean install
-
Run the application
java -jar target/inventoryManagementSystem-0.1.jar
src/
βββ main/
βββ java/me/yushi/inventorymanagementsystem/
β βββ controller/ # UI Controllers
β βββ model/ # Entity Classes
β βββ repository/ # Data Access Layer
β βββ service/ # Business Logic
β βββ view/ # Swing UI Components
βββ resources/
βββ META-INF/
βββ persistence.xml # JPA Configuration
Distributed under the MIT License. See LICENSE.txt
for more information.
Yushi Cui - realYushi@gmail.com
Project Link: https://github.com/realYushi/Inventory-Management-System