KitchenCTRL is a Java-based application designed to help users manage their kitchen inventory and recipes efficiently. The application provides a command-line interface for users to add, delete, and list ingredients and recipes, as well as navigate between different sections of the application.
- Inventory Management: Add, delete, and list ingredients in your kitchen inventory.
- Recipe Management: Create, delete, and list recipes.
- Data Persistence: All data is stored locally in text files and is automatically saved after each command.
- User Guide
- Developer Guide
- About Us
- JDK 17 (use the exact version)
- IntelliJ IDEA (latest version recommended)
- Ensure IntelliJ JDK 17 is defined as an SDK, as described here.
- Import the project as a Gradle project, as described here.
- Verify the setup: After importing, locate the
src/main/java/controller/KitchenCTRL.javafile, right-click it, and chooseRun KitchenCTRL.main(). You should see a welcome message from the application.
This project uses Gradle for build automation and dependency management. Refer to the Gradle Tutorial for more information.
- I/O Redirection Tests: Navigate to the
text-ui-testdirectory and run theruntest(.bat/.sh)script. - JUnit Tests: JUnit tests are provided in the
src/test/java/kitchenctrlfolder. Refer to the JUnit Tutorial for more information.
A sample CheckStyle rule configuration is provided in this project. Refer to the Checkstyle Tutorial for more information.
The project uses GitHub Actions for CI. When you push a commit or create a PR, GitHub Actions will automatically build and verify the code.
The /docs folder contains the project documentation. To publish the documentation:
- Go to your fork on GitHub.
- Click on the
settingstab. - Scroll down to the
GitHub Pagessection. - Set the
sourceasmaster branch /docs folder. - Optionally, use the
choose a themebutton to select a theme for your documentation.