Peter Jung's Project Portfolio Page
Project: Tinner
Tinner (anagram of Intern) is a desktop app for managing internship applications, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, Tinner allows you to easily sort through and retrieve the relevant information faster than traditional GUI apps.
Given below are my contributions to the project.
-
Code contributed: RepoSense link
- New Features:
- Added the
Roleclass and relevant tests to Tinner (Pull request #46)- What it does: Introduces a core construct to the application; a
Roleobject is associated with aCompanyobject in the application and is able to store information about an internship role - Justification: The
Roleclass forms the foundation of the application; provides the ability for users to track, remind, and review their internships applications - Highlights: This change would inspire a sequence of changes in the UI, documentation, and testing relevant to the
Roleclass
- What it does: Introduces a core construct to the application; a
- Updated the UI to display
Roleobjects as stored Tinner (Pull request #79)- What it does: Visibly displays the list of
Roleobjects associated with aCompanyobject via a smaller scroll pane nested inside aCompanycard - Justification: The internally stored list of
Roleobjects must be made visible to the user for tracking, otherwise the application would serve no purpose - Highlights: This change refactored the structure of the
RoleCardclass to better align with that of theCompanyCardfor easier maintenance
- What it does: Visibly displays the list of
- Added star icon to indicate favourite status of
Companyobject (Pull request #142)- What it does: Adds a star icon next to the name of a
Companythat has been favourited by the user via thefavouritecommand - Justification: The star icon categorises specific companies that the user may be more interested in, enhancing the overall user experience
- Highlights: This change was the first instance of integrating an image into the application, something that would reoccur with the addition of the command table in the help window
- What it does: Adds a star icon next to the name of a
- Created the reminder window (Pull requests #179, #186, #188, #293)
- What it does: Allows the user to view a list of urgent reminders that fall within a set reminder window
- Justification: This feature is necessary for users to be reminded of upcoming deadlines to their internship applications, a core value proposition of Tinner
- Highlights: This change would not only be cosmetic but also entail refactoring of the
UniqueReminderList
- Added the
- Project management:
- Enhancements to existing features:
- Updated storage behaviour for
Deadlineclass for compatibility with testing (Pull request #68) - Refactored the
Nameclass toCompanyNamefor clearer separation between theRoleandCompanyclasses (Pull request #80) - Restructured the
Roleclass and other dependent classes to better model its usage as well as to ease its development (Pull request #99) - Overhauled UI completely to give a more personalised look to Tinner (Pull request #104)
- Updated command parse error message for better readability (Pull request #264)
- Added command table in help window (Pull request #294)
- Updated storage behaviour for
- Documentation:
- User Guide:
- Developer Guide:
- Updated target user profile section (Pull request #23)
- Converted documentation from
.docxto.md(Pull request #23) - Updated documentation for
Logiccomponent (Pull request #158) - Added documentation for
deleteRolecommand (Pull request #165) - Updated documentation for
UIcomponent (Pull request #275) - Added documentation for
setWindowcommand and its use cases (Pull requests #275, #297)
- Community: