Ryan's Project Portfolio Page
Project: Fish Ahoy!
Fish Ahoy! Is a desktop app for managing your fish, fish tanks, and relevant tasks, optimized for use via a Command
Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI).
Fish Ahoy! streamlines the fish keeping experience by helping you keep track of your many fishes, tanks and weekly tasks, such as feeding and cleaning.
Given below are my contributions to the project.
- New Feature: Added a sorting function for user to sort existing fish in the panel.
- What it does: allows the user to sort fish by a given attribute and tank.
- Justification: This feature improves the product significantly because a user can sort his fishes to his own preference, and change the ordering of the fishes.
- Highlights: This enhancement builds upon existing FilteredList functionality through integrating a SortedList. It required a study of design alternatives and Java FilteredList and SortedList implementations.
- Improved Task Sorting: Added a sorting based off priority to Tasks.
- What it does: allows the user to easily view tasks based off priority.
- Justification: This feature improves the product because a user can now see the most urgent tasks first and focus on them, improving the benefits of the tasks feature for the user.
- Highlights: This enhancement also uses SortedLists to sort the tasks by priority. To facilitate this, I also added enums for priority to allow for easier sorting. (Pull Requests #119, #214)
-
Code contributed: RepoSense link
- Project management/Contributions to team-based tasks:
- Managed releases
v1.3
-v1.3.1
(2 releases) on GitHub. - Checked, approved and merged 32+ PRs, handling conflicts and helped fix group mates’ PRs:
- Created 28 and closed 53 issues, of which the latter 40 was assigned and closed by me.
- Ensure project progress is on schedule.
- Summarise and delegate tasks at every project meeting, see Project notes.
- Managed releases
- Enhancements to existing features:
- Wrote additional tests for existing features to increase coverage (Pull requests #67, #39)
- Improved Help page: Added a JavaFX WebView to load the UserGuide.
- What it does: allows the user to seek for help from the application.
- Justification: This feature improves the product because a user can now access the help page from the application, and also a local html version of the help page if there is not internet access.
- Highlights: This enhancement uses JavaFX WebView to load the help page.
- Credits: After coming up with the idea to use JavaFX WebView, I referenced an already existing implementation of a help page built on JavaFX WebView from AY2223S1-CS2103- F14-1
- Documentation:
- User Guide:
- Developer Guide:
- Add implementation details of the
fish sort
feature. - Add sequence diagram for
fish sort
. - Add acknowledgements section.
- Add implementation details of the
- Community: