A Flask-based web application for inventory management and optimization, featuring various tools for demand forecasting, safety stock calculation, and inventory analysis.
-
Data Management
- File upload and processing
- Data cleaning and preprocessing
- Data type conversion
- Data visualization
-
Inventory Analysis
- Safety stock simulation
- Economic Order Quantity (EOQ) calculation
- Inventory turnover analysis
- Cost of inventory analysis
-
Demand Forecasting
- Time series analysis
- Seasonal decomposition
- Multiple forecasting methods
- Visualization of forecasts
-
Machine Learning
- Classification and regression models
- Feature engineering
- Model training and evaluation
- Prediction capabilities
- Clone the repository:
git clone https://github.com/JosephAni/datasage.git
cd datasage- Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate Note:
Always activate the virtual environment with
source venv/bin/activatebefore running the app or installing packages.Install all requirements inside the venv:
pip install -r requirements.txtIf you use an IDE, set the Python interpreter to
venv/bin/pythonfor this project.
You can create a run.sh script to automatically activate the venv and run the app:
#!/bin/bash
source venv/bin/activate
python app.pyMake it executable:
chmod +x run.shThen run your app with:
./run.sh- Create a
.envfile with the following variables:
SECRET_KEY=your-secret-key-here
DATABASE_URL=sqlite:///inventory.db
DEBUG=True- Run the application:
python app.pyThe application will be available at http://localhost:8080
inventory-optimization/
├── app.py # Main application file
├── requirements.txt # Python dependencies
├── .env # Environment variables
├── .gitignore # Git ignore file
├── static/ # Static files (CSS, JS, images)
│ ├── css/
│ └── js/
└── templates/ # HTML templates
- Flask 3.0.2
- Flask-SQLAlchemy 3.1.1
- pandas 2.2.1
- numpy 1.26.4
- scikit-learn 1.4.0
- matplotlib 3.8.2
- plotly 5.18.0
- And other dependencies listed in requirements.txt
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Joseph Ani - GitHub
Project Link: https://github.com/JosephAni/datasage
To build and run the app using Docker (with the fixed base image):
docker build -t datasage .
docker run -p 8080:8080 datasage