We have built a web application using Next Js in the front-end and Flask in the back-end which implements XGBoost Machine Learning Model to predict Order Quantity and Expenditure based on various KPIs like Location, Date, OEMs, Asset Type (Category), etc. Our application takes a CSV file as input and shows complete analysis and predicted data through graphs.
Note: For now, Filters have only dummy data, they are not implemented due to time constraints.
Step 1 : Clone this repository https://github.com/p1yu5h0/vmware_hackathon
Step 2 : Navigate to Server Directory and run the flask server (on Localhost:5000)
Make sure you have following dependencies Installed
- Flask , Flask Cors
- Numpy, Pandas
- Matplotlib, pickle-mixin, Joblib
- Sklearn , XGBoost
Step 3 : Navigate to Client Directory and run the following command to install all the client side dependencies
npm install
Step 4 : To run the Next Js Application, execute the following command in Client directory (on Localhost:3000)
npm run dev
Step 5 : Now Open http://localhost:3000 in your browser
1. Login Details :
Username : admin
Password : admin
2. Input File Type
Make sure that your input file type is CSV and it contains following columns :
- Purchase Date
- Product Name
- Category
- OEM
- Item Price USD
- Ordered Qty (Optional)
- Row Total (Optional)
- Shipping Country
- Region
Due to time constaints, we were not able to implement some features completely. So our goal is to update this project futher to have following functionaitites:
- Save Past Analysis Data
- Save Notes as text file
- Add Insights based on predicted data
- Add more graph types
- Filter data
- Figma File - Figma Prototypes, that we designed before development.
- Youtube Video - Demonstration of our complete project