In 2019, I moved my résumé from Google Docs into my website, using HTML and CSS. I wanted the résumé to be available in different languages as part of that move.
Upon looking for existing solutions on the internet, I realized that they were either overkill or didn't fit my use case. But, since I was looking for an idea to write a new article on Medium anyway, I figured: why not develop a small library on my own?
I quickly came up with a solution that translated HTML into different languages based on data-selectors and JSON files. The translation happens in the client, not on the server. I published my learnings and the (unoptimized) source code on Medium and GitHub, migrated and CV, and moved on.
A few months later, my library had gotten some traction on GitHub in the form of stars, and people wrote to me saying that Simple Translator was precisely what they were looking for. Astonished and motivated by this feedback, I decided to go one step further and make an actual NPM library out of it.
I took the chance to refactor the source code, add new features, improve the API and documentation, and learn how to create and publish NPM packages. This being my first "real" library, I had a steep learning curve (including made mistakes, of course) until I could finally see the result on NPM.
Having created an open-source project on GitHub, interacting with the community, fixing bugs, and being a maintainer has allowed me to gain an extraordinary amount of new skills and knowledge, which I couldn't have imagined before.