A terminal-based coffee machine simulator built in Python, designed to emulate a realistic coffee ordering experience. The system features ingredient stock management, interactive user input, and automated billing using the global keyword. Built with a modular, object-oriented structure, it also includes a custom logger that records user activity and system errors to a log file β making it both practical and production-aware.
- πΉ Object-Oriented Programming (OOP)
- πΉ Custom Exception Handling
- πΉ User Interaction via CLI
- πΉ Custom Logger Writing to File
- πΉ Use of global keyword for billing management
- πΉ Clean and Modular Code Structure
- β Validates ingredient availability before making coffee
β οΈ Raises custom exceptions when ingredients are insufficient- π Logs important events and errors to a log file via a custom logger
- π¬ Provides a simple interactive menu for users
- π° Uses the global keyword to manage and update billing across functions
- π Easily extendable for new coffee options or features
-
β Ensure Python 3.x is installed:
python --version
-
π₯ Clone this repository:
git clone https://github.com/shaikhf04/CoffeeMachineMiniProject.git cd CoffeeMachineMiniProject -
βΆοΈ Run the app:python MakeCoffee.py
CoffeeMachineMiniProject/
βββ assets/ # Screenshots and image assets
βββ classes/ # Python class files (if modularized)
βββ logs/ # Log files generated by the custom logger
βββ main.py # Main script to run the application
βββ README.md # Project documentation
```
