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
Role
class and relevant tests to Tinner (Pull request #46)- What it does: Introduces a core construct to the application; a
Role
object is associated with aCompany
object in the application and is able to store information about an internship role - Justification: The
Role
class 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
Role
class
- What it does: Introduces a core construct to the application; a
- Updated the UI to display
Role
objects as stored Tinner (Pull request #79)- What it does: Visibly displays the list of
Role
objects associated with aCompany
object via a smaller scroll pane nested inside aCompany
card - Justification: The internally stored list of
Role
objects must be made visible to the user for tracking, otherwise the application would serve no purpose - Highlights: This change refactored the structure of the
RoleCard
class to better align with that of theCompanyCard
for easier maintenance
- What it does: Visibly displays the list of
- Added star icon to indicate favourite status of
Company
object (Pull request #142)- What it does: Adds a star icon next to the name of a
Company
that has been favourited by the user via thefavourite
command - 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
Deadline
class for compatibility with testing (Pull request #68) - Refactored the
Name
class toCompanyName
for clearer separation between theRole
andCompany
classes (Pull request #80) - Restructured the
Role
class 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
.docx
to.md
(Pull request #23) - Updated documentation for
Logic
component (Pull request #158) - Added documentation for
deleteRole
command (Pull request #165) - Updated documentation for
UI
component (Pull request #275) - Added documentation for
setWindow
command and its use cases (Pull requests #275, #297)
- Community: