# Contributing to GoodDollar

GoodDollar is a nonprofit, open-source protocol building Universal Basic Income (UBI) on-chain through the G$ token. We maintain smart contracts, SDKs, and dApps that make it easy for anyone  to integrate G$ into real-world products.

**Useful links**

* Docs: <https://docs.gooddollar.org>
* Website: <https://gooddollar.org>
* GitHub: <https://github.com/GoodDollar>

***

### Ways to Contribute

#### 1. Build a Project with G$

The **GoodBuilders Program** supports teams building on GoodDollar with mentorship and funding.

* Apply: <https://ubi.gd/goodbuilders>
* Community Telegram: <https://ubi.gd/GoodBuildersTG>

#### 2. Solve/Review a Bounty&#x20;

Bounties are how most open source contributors get involved. There are four roles in the pipeline:

**Contributor** — the AI opens a PR with a first-pass solution. You take it from there: review the AI's code, fix what's wrong, fill gaps, and get it to a standard worth reviewing by a human.

**Reviewer** — a human reviewer checks the Contributor's corrected version. You validate correctness, catch anything still missed, and approve it for QA.

**QA** — test the actual behavior of the changes in a real environment. You confirm the fix works end-to-end and file structured bug reports for anything that doesn't pass.

**Maintainer** — final sign-off before merge and payout approval.

{% hint style="info" %}
[Browse Open Bounties Github Board](https://github.com/orgs/GoodDollar/projects/5). \
Issues are labeled `gd-bounty-<tier>` (e.g. `gd-bounty-basic`)
{% endhint %}

> A single person can hold both Reviewer and QA roles on the same bounty. See \[Open Source Contributors] for the full role guide and how to progress.

* We follow the [GitHub contribution guidelines](https://guides.github.com/introduction/flow/) — everything below builds on top of that.

{% hint style="info" %}
Learn the[ growth path for Gooddollar Open Source Contributors](https://docs.gooddollar.org/~/revisions/s7xM2Rxo2BguNLpej6MF/for-developers/contributing/open-source-contributors/contributor-growth-path)&#x20;
{% endhint %}

#### 3. Propose Your Own Idea

Have something in mind? Propose it through the Gardens Pool for Open Source Contributors.

* Forum: <https://forum.gooddollar.org>

***

### Summary of how a Bounty Works

Each bounty follows this flow. [Learn more](/for-developers/contributing/open-source-contributors.md#every-bounty-follows-the-same-path)

```
Bounty posted → AI opens PR → Contributor fixes AI code → Reviewer checks → QA tests → Maintainer sign-off → Merge & payout
```

{% hint style="info" %}
&#x20;New here?&#x20;

Start with  [Open Source Contributors ](/for-developers/contributing/open-source-contributors/contributor-growth-path.md)to find the right role for you, then head over to the [Bounty Tiers](/for-developers/contributing/open-source-contributors/payments-for-reviews-contributors-and-qa.md) to understand scope and rewards
{% endhint %}

***

### Repositories

* <https://github.com/GoodDollar/GoodProtocolUI>
* <https://github.com/GoodDollar/GoodSdks>
* <https://github.com/GoodDollar/GoodCollective>
* <https://github.com/GoodDollar/GoodWeb3-Mono>

***

### Need Help?

* Bounty questions: Builders Telegram → <https://ubi.gd/GoodBuildersTG>
* General questions: Comment directly on the GitHub issue or PR

***

**Your contributions, large or small, help advance GoodDollar's mission to reduce wealth inequality through open, decentralized tools.**

Thank you for your interest building with us, and welcome to **GoodDollar**!


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.gooddollar.org/for-developers/contributing.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
