For almost three years, I have worked exclusively using Nodejs and wanted to contribute to it.
Sometimes, new time zones get created, countries decide to end DST earlier, etc. The maintainers must keep checking the repository manually for new updates. Added to it, the processing of manually patching the new files is very time-consuming
I worked on creating a GitHub action that would fetch the latest ICU time zone file from the ICU repository and patch it with the file present in the Nodejs source. With the fix, we no more needed to manually check and patch the files. This action will run weekly and create a PR to update the files. The next version of Nodejs would have the latest time zone information.
It wasn’t easy as the code base was huge, and it was challenging to find issues for me to pick. The contribute page on the GitHub repository is the best place to find topics. For Nodejs, it was https://github.com/nodejs/node/contribute. You need to find issues with the label “good first issue.” Make sure you read the contributing guidelines first.
I found the issue I would work on, but I didn’t have the context/information to make me successful. The best bet was to read through the existing issue, find any other linked issues, and ask for pointers from the collaborators. In my case, the questions were already asked by other members.
After a month of putting in the work, I was able to get my PRs merged into Nodejs's core repository.
The PRs -