Skip to content

Contribute

Welcome to KUWoC! This guide will help you get started with contributing to the participating organizations’ projects.

KUWoC is a 2-month long program where you contribute to open-source projects from participating organizations. Your contributions help real-world projects while you learn and grow as a developer.

Visit the Organizations page to browse all participating organizations and their projects. Each organization has different focus areas, tech stacks, and contribution opportunities.

When exploring an organization’s repository, check for:

  • CONTRIBUTING.md - Detailed contribution guidelines
  • CODE_OF_CONDUCT.md - Community standards and expectations
  • README.md - Project overview and setup instructions
  • Issues labeled good-first-issue, junior-job,good-first-pr - Great starting points
  • Pull request templates - Required format for submissions

While each organization may have specific requirements, here’s a typical workflow:

Browse the Organizations page and pick a project that:

  • Matches your interests and skills
  • Has clear documentation
  • Has open issues you can work on
Terminal window
# Fork the repository on GitHub
# Clone your fork
git clone https://github.com/YOUR_USERNAME/PROJECT_NAME.git
# Add upstream remote
git remote add upstream https://github.com/ORGANIZATION/PROJECT_NAME.git
# Install dependencies (check project README)
npm install # or yarn, pip, etc.
  • Look for issues labeled good-first-issue, kuwoc, help-wanted, or beginner-friendly
  • Read the issue description carefully
  • Comment on the issue to express your interest before starting work
  • Wait for maintainer approval if required
Terminal window
# Create a new branch
git checkout -b feature/your-feature-name
# Make your changes
# Write clean, documented code
# Follow the organization's style guide
# Test your changes thoroughly
npm test # or the project's test command
# Commit with clear messages
git commit -m "Add: feature description"
Terminal window
# Push to your fork
git push origin feature/your-feature-name
# Open a pull request on GitHub
# Fill out the PR template completely
# Reference the issue you're addressing
# Provide clear description of your changes
  • Maintainers may request changes
  • Respond promptly and professionally
  • Make requested changes and push updates
  • Engage in constructive discussion

You can contribute in many ways:

  • Code: Bug fixes, new features, performance improvements
  • Documentation: Improving README, tutorials, API docs
  • Testing: Writing tests, reporting bugs, testing features
  • Be respectful and professional
  • Ask questions when unclear
  • Provide context in your issues and PRs
  • Respond to maintainer feedback promptly
  • Write clean, readable code
  • Follow the project’s coding conventions
  • Add comments where necessary
  • Include tests for new features
  • Keep commits atomic and well-described
  • Test your changes thoroughly
  • Update documentation if needed
  • Follow the organization’s commit message format
  • Ensure your code passes all tests
  • Rebase on latest upstream if needed

If you’re stuck or have questions:

  1. Check the organization’s documentation - Most answers are there
  2. Search existing issues - Someone may have asked before
  3. Ask in the issue comments - Maintainers are there to help
  4. Join community channels - Discord, Slack, or other platforms
  5. Reach out to KUWoC organizers - For program-related questions

Head over to the Organizations page, find a project that excites you, read their contribution guidelines thoroughly, and start making a difference!


Happy Contributing! Remember, every expert was once a beginner. Don’t be afraid to ask questions and learn along the way.