The problem SSOC'22 contributions solves
I have contributed to two projects named Portfolioshop and Awesome Chrome Extensions. I have raised 3 PRs and all three got merged successfully. Below is my contribution to each project:
Portfolioshop:
- issue (#67) An image uploading component which helps users to upload images effortlessly and store them into azure blob storage.
- issue(#45) There are errors in the console when we start the web application which later can create problems or can make the website slow.
Awesome Chrome Extensions:
- issue(#488) Typing speed extension makes it handy to calculate your typing speed and accuracy. Different quotes each time makes it engaging.
It was a confidence-boosting experience as I worked on some real-world projects and learnt how to implement my skills. My learning outcome from this program includes Microsoft Azure, React image uploading library, how a chrome extension works and how to implement it using HTML, CSS and JS. Also, the art of fixing errors.
Challenges I ran into
It was the first open-source program in which I have participated and when you are new to something, you will face challenges in many instances. I also got stuck many times and it was frustrating but in the end, I have learnt something from that. The challenges faced by me during this SSoC are as:
Portfolioshop:
- During fixing the issue(#67), I encountered difficulty in understanding the azure blob storage working and I have to spend 1 to 2 days learning it. Also, I worked with the react-images-uploading library.
- In issue(#45), It was difficult to find the errors in the code and eventually I found them but to resolve them I have to learn about React Helmet and HTML attributes. I solved this issue by passing HTML attributes as an object instead of a bool.
Awesome Chrome Extensions:
- While working with issue(#488), I faced problems in fetching data from API and my quotes were not showing, I resolved this by using fetch inside an async function. Also, I have learnt about customization in manifest.json like permissions, browser actions, etc.