-
-
Notifications
You must be signed in to change notification settings - Fork 116
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: add onboarding maintainers guide #1638
base: master
Are you sure you want to change the base?
Changes from 1 commit
80084ae
25e57e2
f2fbe41
f7023e8
a099041
e4a3586
49a16e1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
@@ -0,0 +1,69 @@ | ||||||||||||||||||||||||||||||||||||||||||||||
# Onboarding Guide for AsyncAPI Maintainers | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
Welcome to the AsyncAPI Maintainer Onboarding Guide! | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
This guide is designed to provide you with everything you need to begin your journey as a maintainer within the AsyncAPI ecosystem. Whether you’re managing workflows, mentoring new contributors, or ensuring that the project stays on track, your role is essential to the success of the community. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
Maintainers are the backbone of any open-source project. You help ensure that processes run smoothly, contributors are supported, and the project evolves sustainably. This guide will help you navigate your responsibilities, from managing code contributions to creating workflows and fostering a healthy, productive community. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
Before we go into getting you started, let's try and clarify just *who* a maintainer is. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
## Who is an AsyncAPI Maintainer? | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
A maintainer is an individual who plays a crucial role in overseeing and guiding the development and growth of an open-source project. As a maintainer for AsyncAPI, you will manage pull requests, resolve issues, enforce coding standards, and ensure the community thrives by helping contributors. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
As a maintainer, you'll be responsible for: | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- Overseeing the technical direction of the project | ||||||||||||||||||||||||||||||||||||||||||||||
- Managing workflows and GitHub Actions to automate tasks | ||||||||||||||||||||||||||||||||||||||||||||||
- Identifying and appointing new maintainers | ||||||||||||||||||||||||||||||||||||||||||||||
- Mentoring new contributors and helping them navigate their journey | ||||||||||||||||||||||||||||||||||||||||||||||
- Recognizing and rewarding contributions to foster community engagement | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
Basically, you're the *glue* that holds the project together and ensures that everything runs smoothly. | ||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
## Steps to becoming a Maintainer | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
Before you can become a **maintainer**, you need to start as a **contributor**. The journey from contributor to maintainer is a rewarding one, and it involves the following steps: | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
### 1. **Pick an Issue** | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- **Join existing PR reviews**: If you're not sure where to start, begin by reviewing open [pull requests](https://github.com/asyncapi/community/pulls). This will give you an understanding of the code and where your contributions might fit in. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- **Look for "*good first issue*" labels**: These [issues](https://github.com/asyncapi/community/issues) are beginner-friendly and will help you get familiar with the project’s structure. Additionally, you can check out the [#97_bot-github-new-issues-prs](https://asyncapi.slack.com/archives/C01J06RL10X) channel on Slack for new issues and PRs. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- **Participate in live streams**: AsyncAPI maintainers sometimes host [live streams](https://www.asyncapi.com/community/events) where they walk through parts of the project. You can request a session on the specific area you want to contribute to. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
> **NOTE**: Make sure whatever issue you pick isn't marked "Do-not-merge" else your PR won't be merged. | ||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
### 2. **Open a Pull Request** | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
For a comprehensive guide on how to open a pull request, refer to the [AsyncAPI Git Workflow Guide](https://github.com/asyncapi/community/blob/master/git-workflow.md). | ||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Missed suggestion |
||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- **Fork the repository**: Fork the repository you want to contribute to and create a new branch for your changes. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- **Make changes**: Implement the changes required to resolve the issue you picked. Ensure your code adheres to the project’s coding standards. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- **Submit a Pull Request**: Once you’re done, submit a pull request to the main repository. Make sure to include a detailed description of your changes. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- **Participate in discussions**: Engage with maintainers and other contributors in the PR comments section. This will help you understand the project better and improve your contributions. | ||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
### 3. **Get your Pull Request Merged** | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- After submitting a pull request, it’s time for the maintainers to review it. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- If you notice no one reviewing your PR (which is rare) or if you need a review urgently, don’t hesitate to ping the maintainers on Slack or GitHub | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- Make sure all the checks (tests, style checks, etc.) turn green for a smooth merge. | ||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
### 4. **Receive an invitation to become a Maintainer 🎉** | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- **Recognition**: After contributing consistently, the maintainers will invite you to join the team. This invitation is a recognition of your contributions and dedication. | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- If you feel you've made enough contributions, but haven't received an invitation, you can open an issue in the relevant repository to discuss your contributions with the maintainers. You can see an example of such an issue [here](https://github.com/asyncapi/cli/issues/1616). | ||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
How many contributions are considered "enough"? I would rather rephrase it to something like that to get rid of ambiguity: If you haven't received an invitation despite contributing consistently, you can open an issue in the corresponding repository to discuss your contributions with the maintainers. Check an example of such an issue. |
||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
## Some Useful Links | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- [AsyncAPI Contributor’s Guide](https://github.com/asyncapi/cli/blob/master/CONTRIBUTING.md): Learn how to set up, contribute, and work on pull requests. | ||||||||||||||||||||||||||||||||||||||||||||||
- [GitHub Workflow Setup Guide](https://github.com/asyncapi/community/blob/master/git-workflow.md): A detailed walkthrough of setting up GitHub Actions and managing workflows. | ||||||||||||||||||||||||||||||||||||||||||||||
- [AsyncAPI Slack Community](https://www.asyncapi.com/slack-invite): Join the community and interact with fellow contributors and maintainers. | ||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I would consider deleting this section as links 1 and 3 are available in the community home page, and the link 2 is available in the section 2: Open a Pull Request. But here, it is misleading, it's not about GitHub Actions.
Suggested change
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The introduction has some overlapping statements basically repeating the same things. I would suggest rewriting the following two paragraphs into a shorter version, something like this:
The idea here is to give a high-level introduction to the role without overwhelming readers with diving deep into too much of context right from the start about responsibilities and activities (They were partially repeated twice in these paragraphs and later on within the dedicated section: Who is an AsyncAPI Maintainer).