My First Open-Source Contribution: Improving Documentation for Ramani Huria

Introduction

Contributing to open-source projects can feel daunting, especially when you’re unsure where to begin. This was exactly how I felt when I decided to make my first contribution. I chose to support the Ramani Huria project because it provides vital geographical data for East Africa, a region that greatly benefits from accessible mapping tools.

As a first-time contributor, I focused on improving the project’s documentation—particularly the README.md, which was unclear and outdated. In the process, I gained valuable experience using GitHub and learned how to contribute effectively to open-source projects.

The Issue

The main issue I addressed was incomplete and outdated documentation. The README.md lacked clear installation steps, context for new contributors, and essential project details. Additionally, the repository did not include a CONTRIBUTING.md file, which is important for guiding new contributors through the process.

I discovered these gaps by reviewing the repository and its structure. These issues could discourage potential contributors from participating, so I decided to take action.

How I Overcame It

As someone new to contributing, I initially felt overwhelmed. I was still learning Git and GitHub workflows, such as:

  • Forking repositories
  • Cloning to my local machine
  • Creating branches for changes

To overcome these challenges, I followed GitHub documentation and tutorials to refresh my understanding. Then, I looked at best practices from other open-source repositories to inform my updates.

Here’s what I did:

  1. Forked the repository to my GitHub account
  2. Cloned the fork to my local machine
  3. Created a branch called update-readme
  4. Updated the README with:
    • Clear installation instructions
    • A project overview
    • Goals and contribution tips
  5. Added a new CONTRIBUTING.md file with:
    • Step-by-step instructions on how to contribute
    • Forking, branching, committing, and pull request guidelines
  6. Committed and pushed the changes
  7. Opened a pull request (PR) to the main repository

Although the PR hasn’t been reviewed yet, the process was a significant learning experience for me.

Conclusion

This experience taught me the value of clear documentation and the importance of community support in open-source development. I now feel more confident using Git and GitHub, and I understand how impactful small contributions—like better documentation—can be.

Contributing to Ramani Huria not only improved the project’s accessibility for new developers but also boosted my confidence as an open-source contributor. I’m excited to continue learning and contributing to other projects in the future.