Eyo Wei Chin - Project Portfolio Page
Overview
AniChan is an all-rounded desktop application meant to improve the workflow efficiency and time management of anime translators. It has also been optimized for fast typists, as such the user will interact with it through a command-line interface.
Summary of Contributions
- New Feature: Added
Browse
which is the ability to access and view all anime with ease.- What it does: Is a useful feature that allows users to look through all available anime series. The browse feature utilises a paging system so that the user can ‘flip’ through the list of anime series. There is support for sorting as well, users will be able to browse through highly-rated anime or in alphabetical order.
- Justification: By having a
browse
feature, users can easily access and view all anime series that are available. As a translator, this will be an essential tool to find a series for reference or future job opportunities. - Highlights: The implementation was challenging as many anime titles have special Unicode characters which are represented by more than 1 char. This made it difficult to print the anime in a consistent format due to the differing representation of the string length. There was also a challenge of having multiple optional parameters and different default values for each combination, which required a lot of branching logic to handle. Lastly, there were several design considerations to ensure that
browse
was able to fulfil its purpose while adhering to the constraints, these considerations are elaborated further in the developer guide.
- New Feature: Added
Search
which is the ability to find any anime with a search term.- What it does: Allows users to search for a specific anime by its full title, just a keyword or with a genre.
- Justification:
search
was built to find it difficult to remember anime titles such asMUSHI-SHI
or long anime titles (>52 characters). This feature should be used in conjunction with the watchlist and bookmark feature to effectively find the anime that the translator wants quickly without much hassle. - Highlights: The challenges of this implementation was with input validation, parsing the parameters into the command and finding the anime that fits the search term. There was some difficulty, to handle the mutually exclusive parameters and special Unicode characters. However, both was resolved with several modifications to the command parser.
-
Code Contributed: RepoSense.
- Enhancements to Existing Features
- Contributed to development of the Switch Workspace feature: #106, #101, #99.
- Contributed to writing of the CommandParser logic: #128.
- Helped to refactor Main.java: #261.
- Decoupled Ui from Parser, Command classes for better cohesiveness early on: #80.
- Contributed to the development of the Anime Class: #22.
- Documentation
- User Guide:
- Developer Guide:
- Team-based tasks
- Created the labels and milestones for the team’s GitHub repository.
- Organised online meetings and discussions.
- Created issues based on team’s discussions and meeting.
- Managed the team’s collaboration document on Google Drive.
- Compiled and built the final jar files for releases.
- Added comprehensive JUnit testing to increase code coverage: #182.
- Reviewed team members PR with non-trivial comments: #269, #135, #185, #46.
- Wrote a python script to pull and save anime data from AniList.
- Minor contributions to enable assertions/emoji use for the team.
- Gave demonstrations during product demos of AniChan.
- Beyond Project Team Tasks
- Identified and reported bugs for a team in PE-D.
- Reviewed another team’s Developer Guide.
- Reviewed another team’s User Guide.