A complete, standalone Java GUI application designed to help small local suppliers to modernize their business operations. This system integrates real-time inventory tracking, dynamic sales processing, secure user authentication, and offline support platform.
Developed in partial fulfillment of the course ITE012 - Computer Programming 2 at the Technological Institute of the Philippines (TIP) - Quezon City.
- Real-time Inventory Tracking: Monitors incoming stock and outgoing inventory levels with dynamic product availability.
- Commercial Transaction Engine: Generates text-based billing invoices/receipts and processes customer payments.
- Global Settings Module: Real-time configuration for global currency symbols (₱, $, €) and dynamic unit localization (pcs, kg, L, boxes).
- Enterprise-Grade Security: Utilizes native Argon2 cryptographic hashing for robust user password protection.
- System Event Logging: Integrates Apache Log4j2 for comprehensive error tracking and operational history.
- Standalone Deployment: Packaged as a native
.exefor direct installation on Windows environments without requiring local IDE setups.
- Download a Java IDE: We recommend Eclipse IDE.
- Download Git Bash: Get the terminal environment from Git-SCM.
Open your Git Bash terminal. Navigate to your Eclipse workspace folder by typing cd (with a space), dragging your workspace folder into the terminal, and pressing Enter:
cd "C:\path\to\your\eclipse-workspace"Next, download the source code by cloning the repository:
git clone "https://github.com/fnskye/Inventory-Management-System/" AutomatedInventoryManagementSystem(If prompted, log in to GitHub to authenticate the connection).
- Open Eclipse.
- Go to
File>Import. - Select
General>Existing Projects into Workspaceand click Next. - Click Browse, select the
AutomatedInventoryManagementSystemfolder you just cloned, and click Finish.
To ensure the database, security, and logging work properly, you must link the provided external .jar libraries.
- Right-click the
AutomatedInventoryManagementSystemfolder in the Package Explorer >Properties. - Navigate to
Java Build Path>Librariestab. - Select Classpath > click
Add External JARs.... - Navigate to the
AutomatedInventoryManagementSystem/libfolder and select the following:argon2-jvm-2.11.jarargon2-jvm-nolibs-2.11.jarjna-5.18.1.jarlog4j-api-2.25.4.jarlog4j-core-2.25.4.jarsqlite-jdbc-3.51.3.0.jar
- Click Apply and Close, then restart Eclipse.
For Running from Source (Developers)
- Open Eclipse and expand the project tree.
- Navigate to the
Mainpackage. - Right-click
Main.java>Run As>Java Application.
For Standalone Executable (Users)
If you do not want to run the code via an IDE, simply navigate to the Releases section on the right side of this GitHub repository. Download the latest AutomatedInventory_v1.4.1.exe and place it in the same folder as the database.db file to launch it instantly.
For launching the application for the first time, the SQLite database will automatically initialize. Use the following default administrative credentials to log in:
- Username:
admin - Password:
admin
- Inventory Menu: Add, update, or remove stock. Set dynamic units and monitor thresholds.
- Order Menu: Add items to the cart, automatically calculate line totals based on the global currency, and generate receipts.
- Sales Report: View aggregated data on past transactions.
- System Settings: Only accessible by the
adminaccount. Change the system-wide currency formatting instantly.
This software was made possible by the incredible work of the open-source community. The following third-party libraries and tools are integrated into this project:
-
- Use: Core system event and error logging.
- License: Apache License 2.0
- Copyright © The Apache Software Foundation.
-
- Use: Cryptographic password hashing and security.
- License: Apache License 2.0
- Copyright © phxql and contributors.
-
- Use: Local database management and SQL drivers.
- License: Apache License 2.0
- Copyright © Taro L. Saito and contributors.
-
- Use: Required dependency for Argon2 native bindings.
- License: Apache License 2.0 / LGPL
- Copyright © Timothy Wall and contributors.
-
- Use: Executable (.exe) wrapper generation.
- License: BSD / MIT
- Copyright © Grzegorz Kowal.
- Timmalog, John Joshua L. - Lead Developer / System Security & Architecture
- Frasco, Joshua Gabriel Q. - Sales Report Module Developer
- Julongbayan, Dale Andre A. - Inventory & Order Module Developer
- Santos, Alexis Andrie C. - Main Menu & UI Dashboard Designer
- Suyo, Hadrian Kendrick S. - Billing Invoice & Receipt Developer