Microgrant Program 101

aeworxet

·3 min read

What is the AsyncAPI Microgrant Program?

The Microgrant Program was created to redistribute sponsors' funds to maintainers as support for their work on the project.

Regular contributors are granted the right to work on Microgrant Issues when a maintainer - due to prioritization, limited capacity, or time - lacks the resources to resolve a GitHub issue.

Maintainers therefore have both first priority to be assigned in the program and the final say on which regular contributors may work on Microgrant Issues, since they will maintain and be responsible for the code later.

How to participate in the Microgrant Program

Interest in working on a Microgrant Issue is expressed in the issue comments in free form. I would like to work on this issue under the Microgrant Program is the most common phrasing.

Expressions are prioritized in the order specified in the Microgrant Program Rules.

  1. AsyncAPI maintainers (from the Microgrant Issue's repository, or from other AsyncAPI repositories who have a prior agreement with the Microgrant Issue repository's maintainers to work on the Microgrant Issue), checked at https://github.com/asyncapi/community/blob/master/MAINTAINERS.yaml

  2. Regular contributors (GitHub users who have three or more pull requests merged throughout the AsyncAPI GitHub Organization, checked with https://github.com/search?q=org%3Aasyncapi+is%3Apr+is%3Amerged+author%3Agh_username).

  3. Other (if a GitHub user doesn't fall under the above categories, the AsyncAPI maintainer can determine the criteria, i.e., regular volunteers, etc.)

To avoid assigning users tasks that exceed their current skill level, regular and other contributors must explain in clear terms how they will approach resolving the Microgrant Issue and refrain from starting work until they are assigned. Attempts to force-push through or impose a PR will not increase their chances of participation.

Current AsyncAPI maintainers do not need to explain their planned approach because it is known in advance that their skill level sufficiently qualifies them to resolve the issue.

There is a mandatory three-day waiting period after the GitHub issue is labeled microgrant before it may be assigned to non‑maintainers, allowing all interested regular contributors to submit their proposals for resolution.

To reiterate: the final decision on assignment belongs to the repository maintainers. They review proposed approaches and assign the candidate with the strongest proposal.

After assignment, the Microgrant Program participant is tracked in the Microgrant Program by their GitHub account ID to avoid inconsistencies caused by GitHub handle (nickname) changes. From the moment of assignment, the only thing required of them is to actually resolve the Microgrant Issue within its timeline (6-8 weeks, depending on the issue's complexity) or clearly articulate in the comments any difficulties that may require an extension.

The Microgrant Program operates on a mutual-exclusion basis, which means that after a user is assigned to a Microgrant Issue, all PRs to that GitHub issue from users other than the assignee will not receive attention.

The most complete information about the Microgrant Program, along with GitHub issues that participate in it, is published in the channel #17_microgrant of AsyncAPI's Slack.

Participating GitHub issues are displayed in the GitHub project Microgrant Program (clear the filter -no:level to see PRs for each Microgrant Issue).