DEV Community

Anirudh Kalyanaraman
Anirudh Kalyanaraman

Posted on • Originally published at theofflina.hashnode.dev on

Contributing to Cyclops-UI

Join me as I share my experience contributing to Cyclops-UI, a user-friendly Kubernetes cluster management GUI. From learning the codebase to collaborating

TLDR;

Open-source platforms are really interesting.

With the correct guidance and some grit, any problem can be solved.

Go is pretty powerful, especially its feature to import packages directly from github, and its strict type adherance.

Contributing to an open-source project is one of the most interesting things that one can do in this field.

Most of the times, entry level contributions consist of documentation edits, issue raising or individual project creation.

As part of the SSOC season 3, Cyclops-UI, a developer friendly open-source Kubernetes GUI provider who permit the user to have complete control over their clusters that run locally, are containerized or are deployed.

Their open-source nature allows customers/users to build their own UI based on the repo.

The backend is built entirely on GO and the frontend uses typescript with react.

Their solution is relatively easy to set up locally and you can either use their containerized version that directly feeds to localhost or you can run it through running their codebase from github which involves a few more steps to set up.

Issue Immutable field #494
This was the issue I requested to be assigned to. Initially I had no idea what to do. This was the first time I was going through a production level GO code.

Huge thanks to Petar Cvitanoviฤ‡, for guiding me through the whole project given the beginner I was.

Thanks to his guidance, almost half the issue was solved without a single line of code.

His advice helped me validate the saying

An engineer is not paid to hammer, but knowing where, when and how to hit.

After some conversation, I got a clearer picture of what needed to be done and a few errors and mishaps later was able to get my pr sorted and pushed it to the codebase.

It was subsequently merged and and I am grateful to have learnt a little bit about how Go works.

Top comments (0)