Google Summer of Code 2021 with FOSSology
An amazing experience, numerous lines of code, implementation from scratch, a lot of debugging, and above all a great learning opportunity describes my GSoC journey in a nutshell.
Sounds overwhelming? Well tbh, it was!!!
If you want to know about my pre-GSoC journey, feel free to read my previous blog post where I have shared the path that I followed to get involved in open-source and become a GSoC student developer.
Hola Amigos!
If you landed in this blog post, probably you might be someone who is fascinated by open-source. Well, I am an open-source fanatic too. From having no idea of what open-source was, how could I make my mark in such a large community, and much more self-doubts, to getting selected for the Google Summer of Code 2021 program as a student developer.
In my GSoC journey, I worked with FOSSology on the project “Adding React Library to new UI”. In this project, my main task was to rewrite the complete user interface in React from scratch while ensuring a highly scalable, flexible, and easy to use and maintain code architecture. Also, it involved upgrading the existing APIs and integrating it with the new frontend code.
About FOSSology
FOSSology is an open-source license compliance software system and toolkit. In simple terms, it helps people to analyze the codebase for various copyright statements and license relevant text. It then generates reports in several formats (like SPDX, dep5, etc.) for legal purposes.
My 10 Weeks Journey (summarised as SDLC )
- Planning: Discussion on using Angular or React for frontend, the best-suited file structure for the new repository
- Analysis: Explored which UI dependency libraries should be used
- Design: Designed wireframe in Figma
- Implementation: Developed frontend code in React and backend APIs in PHP
- Testing & Integration: Ensured cross-browser and cross-platform support, hosting on Docker Hub, prop type validation, Jest for testing, and integrated GitHub actions for CI/CD test
- Maintenance/Enhancement: Eslint for static code analysis, Prettier for code formatting, and enforced Airbnb style guide for ensuring consistent style throughout the code
- Documentation: Storybook to document components and Fossology wiki for overall documentation
Contributions to FOSSology
Gracias, Thank you, Dhanyawad!
All in all my entire GSoC journey has been no less than an adventurous ride, full of excitement. I can’t thank enough my mentors for providing me the much-needed guidance and support throughout my GSoC journey. We used to have regular weekly meetings which helped me to ensure that the project is on track and there are no blockers. My heartfelt gratitude to the Fossology community who made me push my limits and deliver the project following the industry-level best practices.
Thanks to my mentors Michael, Shaheem, Sahil, and Vivek for being patient enough to answer all my queries and sharing their valuable feedback at every stage of the project. A big shout-out to Gaurav as well for always being there to help and guide me in every way possible.