{"id":28259306,"url":"https://github.com/saru2020/inventoryoptimizer","last_synced_at":"2025-07-16T05:07:54.558Z","repository":{"id":256269351,"uuid":"854783951","full_name":"saru2020/InventoryOptimizer","owner":"saru2020","description":"This project provides an inventory optimization tool that uses synthetic data and applies demand forecasting, inventory classification, safety stock calculation, and other inventory management techniques using AI/ML!","archived":false,"fork":false,"pushed_at":"2024-09-28T09:09:51.000Z","size":391,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-04T14:19:19.055Z","etag":null,"topics":["artificial-intelligence","inventory-management","inventory-optimization","machine-learning","retail","warehouse-management"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saru2020.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-09-09T19:14:47.000Z","updated_at":"2024-12-31T06:55:05.000Z","dependencies_parsed_at":"2025-07-04T14:09:03.549Z","dependency_job_id":"3555586d-8f07-4cf0-bc9e-0cf713550cd8","html_url":"https://github.com/saru2020/InventoryOptimizer","commit_stats":null,"previous_names":["saru2020/inventoryoptimizer"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/saru2020/InventoryOptimizer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saru2020%2FInventoryOptimizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saru2020%2FInventoryOptimizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saru2020%2FInventoryOptimizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saru2020%2FInventoryOptimizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saru2020","download_url":"https://codeload.github.com/saru2020/InventoryOptimizer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saru2020%2FInventoryOptimizer/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265483407,"owners_count":23774203,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["artificial-intelligence","inventory-management","inventory-optimization","machine-learning","retail","warehouse-management"],"created_at":"2025-05-20T02:16:55.005Z","updated_at":"2025-07-16T05:07:54.532Z","avatar_url":"https://github.com/saru2020.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n---\n\n# Inventory Optimization Tool\n\nThis project provides an inventory optimization tool that uses synthetic data and applies demand forecasting, inventory classification, safety stock calculation, and other inventory management techniques. It is containerized using Docker to ensure easy deployment and portability.\n\n\n## Blog\n\n[a detailed write up](https://saru2020.medium.com/optimizing-inventory-management-with-the-inventory-optimizer-tool-5bbb431ebd12) to understand the tool in-depth.\n\n## Requirements\n\nBefore you start, ensure you have the following installed:\n\n- Docker: [Get Docker](https://docs.docker.com/get-docker/)\n\n## How to Run\n\n### Step 1: Clone the Repository\n\nClone the project to your local machine.\n\n```bash\ngit clone https://github.com/saru2020/InventoryOptimizer.git\ncd InventoryOptimizer\n```\n\n### Step 2: Add Data Directory\n\nMake sure to have a `/data` folder at the root of the project to store input and output CSV files.\n\n```bash\nmkdir data\n```\n\n### Step 3: Build and Run the Docker Container\n\nUse the provided `run.sh` script to build and run the Docker container. This will automatically build the image, start the container, and map the `/data` folder for storing input and output files.\n\n```bash\nchmod +x run.sh\n./run.sh\n```\n\nAlternatively, you can manually run the commands:\n\n```bash\n# Build Docker image\ndocker build -t inventory_optimizer .\n\n# Run Docker container\ndocker run -v $(pwd)/data:/data --name inventory_optimizer inventory_optimizer\n```\n\nThe container will generate synthetic data and save the results to the `/data/output.csv` and `/data/store_turnover.csv` files.\n\n### Step 4: View Results\n\nOnce the container has finished processing, the results will be stored in the `/data` folder. The main outputs are:\n\n- **`output.csv`**: Contains the daily inventory orders, forecast data, and other information for each SKU and store.\n- **`store_turnover.csv`**: Contains inventory turnover ratios for each store.\n\n## Example Data\n\n### Input\n\nThe script generates synthetic data that simulates store-level sales and inventory information. Below is a sample of what the synthetic data ([`source.csv`](https://github.com/saru2020/InventoryOptimizer/blob/main/data/source.csv)) might look like:\n\n| Date       | Store    | SKU    | SalesQuantity | InventoryLevel |\n|------------|----------|--------|---------------|----------------|\n| 2023-01-01 | Store001 | SKU001 | 10            | 55             |\n| 2023-01-01 | Store001 | SKU002 | 14            | 42             |\n| 2023-01-01 | Store001 | SKU003 | 9             | 75             |\n| 2023-01-02 | Store001 | SKU001 | 7             | 68             |\n| 2023-01-02 | Store001 | SKU002 | 15            | 34             |\n\n### Output\n\nAfter processing, the tool will output optimized inventory data. Here is a sample from the [`output.csv`](https://github.com/saru2020/InventoryOptimizer/blob/main/data/output.csv) file:\n\n| Date       | Store    | SKU    | OrderQuantity | InventoryTurnover |\n|------------|----------|--------|---------------|-------------------|\n| 2023-01-01 | Store001 | SKU001 | 12            | 2.5               |\n| 2023-01-01 | Store001 | SKU002 | 5             | 1.8               |\n| 2023-01-01 | Store001 | SKU003 | 0             | 0.9               |\n\nAnd a sample from the [`store_turnover.csv`](https://github.com/saru2020/InventoryOptimizer/blob/main/data/store_turnover.csv) file:\n\n| Store    | InventoryTurnover |\n|----------|-------------------|\n| Store001 | 2.0               |\n| Store002 | 1.7               |\n| Store003 | 1.5               |\n\n### Configuration\n\n- **`source.csv`**: The input file is generated during execution with synthetic data based on Tamil Nadu holidays.\n- **`output.csv`**: Contains optimized daily order quantities and other calculated metrics like demand forecast and reorder points.\n- **`store_turnover.csv`**: Contains the inventory turnover ratios at the store level.\n\n## Additional Configuration\n\n- The Python script generates synthetic data by default, but you can replace the `generate_synthetic_data` function to load real data from a CSV file.\n- Modify the Dockerfile to install additional dependencies or adjust project settings.\n\n---\n\nFeel free to adapt this to include more examples or additional details based on your specific project requirements!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaru2020%2Finventoryoptimizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaru2020%2Finventoryoptimizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaru2020%2Finventoryoptimizer/lists"}