Contributing Guide

Learn how to claim bounties, submit work, and get paid

Getting Started as a Contributor

Welcome! GitForge makes it easy to contribute to projects and earn rewards. Here's everything you need to know.

New to Open Source?

No problem! Start with beginner-friendly bounties (🟒) to learn the ropes. The community is here to help you succeed.

Finding Bounties

Browse Open Bounties

  1. Visit the project's GitHub repository
  2. Go to the "Issues" tab
  3. Filter by the "bounty" label
  4. Look for your skill level (🟒 beginner, 🟑 intermediate, πŸ”΄ advanced)
https://github.com/[org]/[repo]/issues?q=is%3Aopen+is%3Aissue+label%3Abounty

What to Look For

  • Clear requirements: Does the bounty have specific acceptance criteria?
  • Realistic scope: Can you complete it in the estimated time?
  • Your skills: Do you have the necessary expertise?
  • Fair compensation: Does the bounty amount match the effort?

Filter by Category

Many projects use labels to categorize bounties:

  • frontend - UI/UX work
  • backend - Server-side code
  • design - Visual design work
  • documentation - Writing and editing docs
  • testing - QA and test coverage
  • good-first-issue - Perfect for beginners

Claiming a Bounty

Step 1: Express Interest

Comment on the bounty issue to claim it:

Example Comment
Hi! I'd like to work on this bounty.

**My relevant experience:**
- Built similar features in [project]
- Familiar with [technology stack]
- Previous contributions: [links]

**My approach:**
1. [Step 1]
2. [Step 2]
3. [Step 3]

**Estimated completion:** 3 days

Looking forward to working on this!

Step 2: Wait for Assignment

The maintainer will review your comment and either:

  • βœ… Assign you to the issue
  • ❓ Ask clarifying questions
  • ⏸️ Let you know if someone else was assigned first
Important

Don't start working until you're officially assigned. Multiple people might be interested, and maintainers assign based on qualifications.

Step 3: Get Started

Once assigned:

  1. Fork the repository
  2. Clone your fork locally
  3. Create a new branch for your work
  4. Set up the development environment
Terminal
# Fork the repo on GitHub, then:
git clone https://github.com/YOUR_USERNAME/repo-name.git
cd repo-name
git checkout -b bounty/issue-number-description
npm install  # or your project's setup command

Doing the Work

Follow the Requirements

Review the acceptance criteria carefully and make sure you:

  • βœ… Complete all listed requirements
  • βœ… Follow the project's coding standards
  • βœ… Write tests for new functionality
  • βœ… Update documentation as needed
  • βœ… Keep commits clean and well-documented

Communicate Progress

Keep maintainers updated, especially if:

  • You hit unexpected challenges
  • You need clarification on requirements
  • You need more time than estimated
  • You're making good progress (share updates!)
Pro Tip

Share a draft PR early to get feedback. It's easier to course-correct than to redo completed work.

Quality Checklist

Before submitting, verify:

  • [ ] Code works as intended
  • [ ] All tests pass
  • [ ] No linter errors
  • [ ] Documentation is updated
  • [ ] Commit messages are clear
  • [ ] No unnecessary files included

Submitting Your Work

Create a Pull Request

  1. Push your branch to your fork
  2. Go to the original repository on GitHub
  3. Click "New Pull Request"
  4. Select your fork and branch
  5. Fill out the PR template
Example PR Description
## 🎯 Closes Issue
Closes #123

## πŸ“ Description
Implemented dark mode toggle with localStorage persistence. Users can now switch between light and dark themes from the settings page.

## βœ… Changes Made
- Added theme toggle component
- Implemented CSS variables for theming
- Added localStorage persistence
- Updated all components for dark mode compatibility
- Added tests for theme switching

## πŸ§ͺ Testing
- Tested in Chrome, Firefox, and Safari
- Verified localStorage persistence
- Checked all pages in both themes
- Ran full test suite (all passing)

## πŸ“Έ Screenshots
[Include before/after screenshots]

## πŸ“š Documentation
- Updated user guide with dark mode instructions
- Added JSDoc comments to new functions

## ⚠️ Breaking Changes
None

Link to the Bounty

Always reference the bounty issue in your PR:

Closes #[issue-number]

This automatically links your PR to the bounty and closes the issue when merged.

The Review Process

What to Expect

After submitting your PR:

  1. Initial Review: Maintainer reviews within 2-3 business days
  2. Feedback: You may receive requests for changes
  3. Iteration: Make requested changes and update the PR
  4. Approval: Once approved, your PR will be merged
  5. Payment: Bounty payment is triggered automatically

Responding to Feedback

When you receive review comments:

  • βœ… Read feedback carefully
  • βœ… Ask questions if unclear
  • βœ… Make requested changes promptly
  • βœ… Respond to each comment
  • βœ… Mark conversations as resolved when done
Stay Positive

Code review is a normal part of the process. Feedback helps you grow as a developer and improves the project.

Common Review Issues

Avoid these common pitfalls:

  • ❌ Not following the project's style guide
  • ❌ Missing tests or documentation
  • ❌ Incomplete implementation of requirements
  • ❌ Breaking existing functionality
  • ❌ Including unrelated changes

Getting Paid

Automatic Payment

Most GitForge projects use automatic payments:

  1. Your PR is merged
  2. GitHub Action triggers payment workflow
  3. Payment is sent to your address
  4. You receive confirmation

Setting Up Payment

Before claiming bounties, set up your payment method:

For Crypto Payments (USDC/ETH)

  • Add your wallet address to your GitHub profile or issue comment
  • Use a secure wallet like MetaMask or Coinbase
  • Verify the network (Ethereum mainnet, Polygon, etc.)

For Traditional Payments

  • Provide email for PayPal/Venmo
  • Or bank details for wire transfer
  • Follow project-specific payment instructions
Security

Never share private keys or passwords. Legitimate projects will never ask for this information.

Payment Timeline

  • Automatic: Usually within minutes to hours
  • Manual: Within 24-48 hours of merge
  • Crypto: Dependent on blockchain confirmation times

Building Your Reputation

Reputation Points

GitForge tracks your contributions and builds your reputation:

  • +10 points per merged PR
  • +50 points per completed bounty
  • +100 points for exceptional work
  • Bonus points for mentoring others

Benefits of High Reputation

  • πŸ₯‡ Featured on contributor leaderboard
  • 🎯 First priority on new bounties
  • πŸ’° Access to higher-value bounties
  • 🌟 Special recognition and badges
  • 🀝 Opportunity to become a core contributor

Reputation Tiers

Newcomer (0-100 points)

Just starting out. Access to beginner bounties.

Contributor (100-500 points)

Regular contributor. Access to intermediate bounties.

Expert (500-1000 points)

Trusted expert. Access to advanced bounties and mentorship roles.

Core (1000+ points)

Core team member. Can review PRs and manage bounties.

Best Practices for Contributors

Communication

  • Be responsive and professional
  • Update the issue with progress
  • Ask questions early
  • Be respectful and collaborative

Quality

  • Follow coding standards
  • Write clean, readable code
  • Include tests and documentation
  • Review your own code before submitting

Efficiency

  • Start with smaller bounties to build confidence
  • Read the entire issue before starting
  • Set realistic timelines
  • Don't claim more bounties than you can handle

Community

  • Help other contributors
  • Share your knowledge
  • Participate in discussions
  • Give back to the community

Common Issues

I claimed a bounty but wasn't assigned

This can happen if:

  • Someone else was assigned first
  • Your experience didn't match the requirements
  • The maintainer is still reviewing candidates

Solution: Be patient and apply to other bounties. Building a track record helps.

My PR has been open for a while

Solution: Politely comment asking for a review. Maintainers are busy and might have missed it.

I disagree with the feedback

Solution: Discuss respectfully. Explain your reasoning, but be open to the maintainer's perspective.

I can't complete the bounty

Solution: Comment on the issue immediately. It's better to communicate early than to ghost the project.

Resources for Contributors