Project: ReadyBakey

ReadyBakey is an application built for busy home bakers or small bakeries. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.

Given below are my contributions to the project.

  • New Feature: Added EditOrder command edito #107
    • What it does: allows the user to that edits an order’s details, remarks, delivery date time, and collection type.
    • Justification: This feature improves the product significantly because a user can rectify any changes made by their customer without deleting and adding a new order.
  • Code contributed: RepoSense link

  • Enhancements to existing features:
    1. CSS changes to
      • Address bugs such as blue boxes populating the application. (Pull Requests: #130, #120)
      • Updated scrollbar look. #120
      • Changed the color of the details in orders list. #166
      • Changed the color of the HelpWindow #123
    2. Added natural date capability to enhance existing datetime capability. (Pull Requests: #141, #234)
      • What it does: allows the user to make use of natural dates (i.e. Monday, Mon, Tues) to input as dates for the AddOrder and EditOrder commands. This is built alongside the DeliveryDateTime capability, which only takes in dates in the form of dd-MM-yyyy.
      • Justification: This feature improves the product significantly by speeding up the users’ ability to type in the date without having to look at their calendar to find the day and month that the order is to be completed.
      • Credits: Used a formula from https://coderanch.com/t/385117/java/date-Monday that gets the next date based on specified NaturalDate input.
    3. Update ExitCommand #96
      • What it does: It sets a 3-second timer before closing the application
      • Justification: This provides a smoother closure of the application compared to being closed abruptly. There was also a message in the response box that cannot be read by the user once the exit command is passed.
    4. Wrote additional tests for dates, increasing the code coverage by 0.04% #141
    5. Added character limits for person prefix inputs #179
  • Contributions to team based tasks:
    • Set up Github team repository, team organisation, and Gradle for repository.
    • Added a new logo for ReadyBakey. #110
    • UI draft image made with Figma to plan out how the final product will look like.
    • Set up Github Projects to track User Stories completed and in progress.
    • Refactor ListCommand to ListPersonCommand. #85
    • Update index.md to match ReadyBakey. #158
    • Releasing of JAR file v1.3.2
    • Updating App Version in MainApp.java #183
    • Updating UI image. (Pull Requests: #181, #70)
    • Update target user profile and value proposition in Developer Guide. #81
  • Contributions to Developer Guide:
    • Added user story and use case for editing customers’ phone number, name, email address, exiting ReadyBakey, and address. #73
    • Added EditOrderSequenceDiagram and EditOrder design considerations. #140
    • Edited Storage Component and StorageClassDiagram to include Orders. #238
  • Contributions to User Guide:
  • Review/mentoring contributions:
  • Contributions beyond the project team: