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
```
