Project: FlashBack
Project: FlashBack
FlashBack is a desktop flashcard application. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.
Given below are my contributions to the project.
- Code Contributed RepoSense Link
- Enhance Find Feature: Enhanced the ability find flashcards by given user input. #56, #63, #75
- What it does previously: Allows the user to find a person in AddressBook only by their name.
- What it does now: Allows the user to find flashcards matching the given keywords in any of its fields (e.g. question, category, priority, and tags), FlashBack displays flashcards that matches any keywords in any of its fields.
- Justification: This improves the product significantly because a user may add a huge amount of flashcards in FlashBack which makes it difficult to search for flashcards with certain keywords in one or some of its fields, and the app should provide a way for users to easily search for flashcards that contains certain keywords in any of its fields.
- Highlights: This enhancement affects existing commands. It required a good understand of existing code to enhance the
ability of finding flashcards, iterating through all its fields and comparing with keywords. The implementation
was challenging as it required changes to existing command and test cases.
- New Feature: Added the ability to filter flashcards by given user input. #82
- What it does: Allows the user to filter flashcards according to user specified fields (e.g. question, category, priority, and tag), FlashBack displays flashcards that matches keywords of all the fields specified by the user.
- Justification: This feature improves the product significantly because a user may want to filter flashcards according to certain fields so that the user can narrow down what flashcards are being reviewed, and the app should provide a way for users to filter flashcards they may want to search for.
- Highlights: This enhancement required good understanding of existing code to add the ability to filter flashcards,
iterating through all its fields and comparing with keywords of the specified fields, and only displaying flashcards
that matches all the specified fields. This implementation was challenging as it required addition to some utility
classes and allowing multiple keywords for a certain specified field.
- Contributions to team-based tasks:
- Refactored test functions and changed test data to fit our project.#56
- Refactored test functions and changed test data to fit our project.#56
- Project Management:
- Managed release for
FlashBack v1.2
on Github.
- Managed release for
- Documentation:
- User Guide:
- Developer Guide:
- Review/Mentoring Contributions:
- Contributions beyond the project team:
- Bugs reported for PE dry run. Issue Tracker