A GUI-based coffee machine simulator built in Python using the tkinter library, designed to provide a realistic and interactive coffee ordering experience. The application features ingredient stock management, intuitive user interface with dynamic screens, and automated billing. Built with a modular and object-oriented design, it also incorporates a custom logger that tracks user actions and system events in log files β ensuring a practical and production-ready solution.
- πΉ Object-Oriented Programming (OOP)
- πΉ Custom Exception Handling
- πΉ Stock and Inventory Management
- πΉ Logging to file for user actions and errors
- πΉ User interaction via Terminal and Tkinter GUI
- πΉ Clean, modular, and extensible code structure
- β Checks ingredient availability before making coffee
β οΈ Raises custom exceptions on insufficient stock- π Logs important events and errors
- π¬ Interactive menu and GUI interface for coffee orders
- π° Handles billing and price calculations in a modular way
- π Easy to extend with new coffee recipes or UI features
-
β Ensure Python 3.x is installed:
python --version
-
π₯ Clone this repository:
git clone https://github.com/shaikhf04/CoffeeMachineMiniProjectGUI.git cd CoffeeMachineMiniProjectGUI -
βΆοΈ Run the app:python WelcomeFrame.py
CoffeeMachineMiniProjectGUI/
βββ assets/ # Images, icons, and other media assets for the GUI
βββ backend/ # Core backend logic (coffee making, stock management, exceptions)
βββ data/ # Data files such as ingredient lists, recipes, and pricing
βββ gui/ # GUI-related modules and frames built using Tkinter
βββ logs/ # Automatically generated log files for user activity and errors
βββ main.py # Main entry point for running the GUI application
βββ requirements.txt # Python dependencies and versions required for the project
βββ README.md # Project documentation (this file)
βββ .gitignore # Specifies files/folders to ignore in Git version control