Project: Inventoryinator

Inventoryinator is a desktop inventory management application that helps gamers quickly and easily manage their in-game inventories. It supports any generic game, in contrast to community-created solutions, which cater for specific games. Users interact with it via a CLI, and receive feedback via a GUI created with JavaFX.

Given below are my contributions to the project.

  • New Feature: Added the addi command, as well as all related structures required to add, store and load items and locations. #17
    • What it does: Adds an item to the inventory.
    • Justification: This feature is the core of Inventoryinator. It is needed for displaying items, adding recipes, using items in recipes for crafting, etc.
    • Highlights: Adding this feature lays the groundwork required for breaking off from AB3 and creating our own product.
    • Credits: Parts of the add command, and Model, Storage, Logic, Ui packages from AB3 were heavily refactored in the creation of this feature.
  • New Feature: Added the listi command that lists all items in the inventory. #17 (yes I did do them all in one PR)
    • What it does: Displays all items in the inventory on the GUI.
    • Justification: This feature is required for users to know which items they have, and what quantities they are at.
    • Highlights: listi lays the groundwork for the future implementation of listr, a command to list all recipes.
    • Credits: Almost entirely refactored from list command of AB3.
  • New Feature: Added the cleari command that clears all items in the inventory. #17 #76 (update for clearing related recipes)
    • What it does: Removes all items and related recipes from the inventory.
    • Justification: This feature is for users who want to start afresh, on a new game or account.
    • Highlights: Adding this feature lays the groundwork required for breaking off from AB3 and creating our own product.
    • Credits: Initially refactored from clear command of AB3, then changed to accomodate deleting related recipes.
  • New Feature: Added the view command to view the detailed information of a single item. #44
    • What it does: Displays an item’s details, quantity, tags and recipes to craft the item.
    • Justification: This is for users who wish to view detailed information of an item that’s usually truncated in list view.
    • Highlights: Implementing this feature resulted in the change of CommandResult to allow for changing parts of the GUI while the program is still running.
    • Credits: Rahul(@Rahul0506) suggested looking at how executeCommand handled the help command.
  • Code contributed: RepoSense link

  • Project management:
  • Enhancements to existing features:
    • Update deli and delr commands to delete the item completely. #63, #66
    • Update addq command to show an error messages and handle non-integers and overflows. #142, #146
  • Documentation:
    • User Guide:
      • Updated the introduction. #103
      • Added pictures for all example commands. #158
    • Developer Guide:
      • Add writeup and sequence diagram of view command. #75
  • Community:
    • PRs reviewed (with non-trivial review comments): #22, #27, #155
  • Testing
    • Wrote test cases for commands I’ve implemented and edited: #17, #44, #76, #146