Project: UniCa$h

UniCa$h is a finance tracking application for university students who want to be more financially conscious. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 19 kLoC.

Given below are my contributions to the project.

  • New Feature: Edit transaction command [PR #64]
    • What it does: Edits an existing transaction in UniCa$h.
    • Justification: The edit command was refactored from AB3’s implementation to make modifications on Transaction objects and its fields
    • Credits: AddressBook - Level 3, which UniCa$h’s edit feature was refactored from
  • New Feature: Expense Summary Plots
    • What it does: Generates a pop-up window which contains summary plots (pie chart [PR #100] and line chart [PR #124]) for the user’s expenses. The plots provide a high-level overview of the user’s expenses broken down per category and per month.
    • Justification: It might be difficult for users to understand their spending habits. This feature provides some simple analytics tools to aid in this regard, which can be further improved in future iterations.
    • Highlights: Fixing the assigned colours to each pie of the pie chart as JavaFX repeats the assigned colours after 8 pies are added to the chart.
  • Enhancements to existing features:
    • Added and improved tests written for add, find, and delete transaction commands [PR #88]
  • Code contributed: RepoSense link

  • Project management:
    • Managed releases v1.2b (1 release) on GitHub
  • Documentation:
    • User Guide:
      • Added documentation for Edit Transaction feature and Summary feature to the UG [PR #136]
      • Fixed documentation bugs found during the PE Dry Run [PR #188]
    • Developer Guide:
      • Added implementation details for Edit Transaction feature and Summary feature to the DG [PR #106]
  • Community:
  • Tools:
    • PlantUML for drawing UML diagrams for the DG