Ng Ho Chi’s Project Portfolio Page
PocketPal
PocketPal is a user-friendly money-management app that makes it easy to track expenses. With a command-line interface, users can quickly log and access their expenses, and categorize them by type. Users can also easily filter expenses based on date, category and price range. Overall, PocketPal is a convenient tool for managing your expenses.
Given below are my contributions to the project.
Storage
Implemented the logic for the serialization and deserialization of Entries and a text format.
- What it does: Allows for the reading, writing and resetting of a database storage file specified by the code.
- Justification: This logic streamlines the process of reading and writing entries to a database storage file, as well as provide utility functions like resetting the database easily for error handling purposes.
- Highlights: The functions for reading and writing were designed to be as easy to use as possible, such that it can be used in any part of the code. Additionally, exceptions are processed and thrown as one that is easily recognizable for easier error handling.
Code Contributed
RepoSense Link
Project Management
Created issues and closed some issues through pull requests, linking relevant milestones and tags.
Enhancements to existing features
- Wrote test cases for 99% test coverage for
Storage
. (Pull requests #208, #118).
- Modified code for deleting entries to allow for the deletion of multiple entries at once (Pull requests #91, #124).
- Fixed bugs related to the saving of datetimes (Pull request #135).
Documentation
Developer Guide
- Provided documentation for
Storage
components
- Provided Class and Sequence diagram for
Storage
components