FakeDonald's Inventory Manager CLI

PythonCLIZero DependenciesGSTInventory
Scroll to explore
2025Year
Web DevCategory
5 toolsStack

// the problem

Why This Needed to Exist

Before building the web version, I needed to validate the core inventory management logic — stock tracking, reorder alerts, GST calculations, and waste management — in a simple, testable format. A CLI tool was the fastest way to prototype and verify business rules without frontend complexity.

// what i built

The Solution

I built a Python CLI application using only standard library modules. The tool features an interactive menu system, JSON-based data persistence, per-item critical stock thresholds with color-coded alerts, GST calculation with receipt formatting, and a waste tracking module for expired inventory.

// key challenges

Problems I Solved

Zero-Dependency Constraint

Without libraries like Click or Rich, I built custom terminal formatting using ANSI escape codes, implemented my own argument parsing, and created a JSON-based persistence layer using only the json and os modules.

Per-Item Stock Thresholds

Different items have different critical levels (buns run out faster than condiments). I implemented a configurable threshold system where each item carries its own reorder point, with visual alerts that escalate from yellow (low) to red (critical).

// outcomes

What I Learned

The CLI tool validated all core business logic before the web version was built, saving significant development time. It also serves as a standalone tool for environments where a web browser isn't available or practical.

// tech stack

Tools & How I Used Them

Python

Core language using only standard library — no pip install required

JSON

Data persistence format for inventory state and transaction history

ANSI Codes

Terminal color formatting for stock alerts and UI elements

argparse

Built-in Python module for command-line argument handling