DEV Community

Ajay Singh
Ajay Singh

Posted on

My LFX Mentorship journey.

Introduction

When I first learned about the LFX Mentorship program, I was immediately drawn to the idea of contributing to real-world open-source projects under the guidance of experienced mentors because I was already a very big fan of Linux and Open Source Softwares and this opportunity was golden. Having already contributed to open source in smaller ways, I wanted to take a step further by working on a project that directly impacts a project which is used by many around the world.

My project was focused on cleaning up and improving the CI (Continuous Integration) and build process for archive documentation. It may sound like a behind-the-scenes task, but documentation pipelines are the backbone of a project’s usability. If the docs break or become inconsistent, it becomes difficult for both new users and contributors to engage with the project effectively.

This post is my attempt to share my journey—the challenges, the learning process, and the impact of my contributions.

What I worked on:-

The Istio Documentation project was using outdated babel dependencies which were throwing a lot of warning in the CI I replaced the babel dependencies with a more modern and fast transpiler and minifier esbuild. Esbuild is written in Go so the transpilation and minification of the files is way much faster.

The project was also using legacy javascript in order to integrate esbuild into the project I would had to convert legacy javascript code to ES6 modules this was one of the main challenges but through the guidance of my mentors Craig Box and Daniel Hawton I was able to refactor the codebase and integrated esbuild ensuring zero errors and warning with clean builds.

The next thing was to have a build process for the archive documentation for the Istio project. Istio hosts their archive documentation on istio.io/archive and my job was that to add a feature through which the users can navigate to those docs using a version selector drop down from the main site and also to enhance the user interface of the site.

Top comments (0)