Revisiting the Artistify Project
During the Weeks of Release 0.2, I have worked on a project called Artistify, which is a Music application which utilizes a npm package to work with the YouTube API and allow users to produce a music queue. This week, I revisited the project repository. And found out that there were huge differences than it was few weeks ago, the project that I forked was already behind by around 100 commits, the Project name has been changed, the application front-end has gone through a lot of updates as well.
I found this project very interesting ever since I started on working on it, since I usually like to listen to music when doing work, studying or playing games, I have actually used the application a couple times. The user experience was decent except for a few minor issues, but there was this one bug that I found very annoying which is when clicking the "remove song from queue" button that is included in the row that displays the song, the song is removed, but it also triggers the play song event on that song. Since I needed another PR for release 0.3, I decided to create this issue in the repository and tried to fix the bug myself, this was my very first time creating an issue on open source projects except for the lab issues in my classmates' repository.
Image below shows how a row looks like in the list:
My initial plan was to move the play song event to the play icon component, so that the play song event wouldn't apply to the 'X' icon, but doing so will disable clicking on the row which means the only clickable portion will be the play button and the 'X' icon, this is problematic because it seemed like they would like the keep the functionality of clicking the row to play the song rather than only allowing the play button to do this. Just when I was thinking of a solution, the repo owner replied to the issue and suggested to use "e.stopPropagation()", I have used this before but totally forgot about it, this saved me a lot of time trying to figure out a solution.
After I was done and submitted my PR, one of the project maintainer had a conversation with me and invited me to their Discord channel, we had a great conversation about the project including plans on how to expand on the current work, new functionality and improving user experience.
Comments
Post a Comment