Skip to content

docs: expand community docs: contributor - recommended tools #1777

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

Merged
merged 14 commits into from
Apr 16, 2025

Conversation

ezinneanne
Copy link
Contributor

@ezinneanne ezinneanne commented Mar 10, 2025

Description

  • Added the recommended tools document

Related issue(s)

See also #1622

Summary by CodeRabbit

  • Documentation
    • Updated the onboarding guide with a more comprehensive list of recommended tools for contributors.
    • Enhanced instructions for previewing Markdown changes and setting up the website locally.

@ezinneanne
Copy link
Contributor Author

Hi @bandantonio @thulieblack , I have separated my previous PR #1730 and I added the recommended tools document in this PR. Kindly review

# Contributor - Recommended Tools
This article covers the recommended tools you should have as a contributor. With these tools, you can set up workflows and begin making contributions.

These are the recommended tools you need:-
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
These are the recommended tools you need:-
These are the recommended tools:

Comment on lines 5 to 6
- A laptop or a desktop computer capable of running tools which you would use for contribution.
- A stable internet connection to fork, clone a repo, make changes, and submit a PR.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are partially true.
Both of these are important prerequisites for sure but they are already met when accessing and reading this document.

A stable internet connection to fork, clone a repo, make changes, and submit a PR.

You need an Internet connection (not necessarily a stable one) to fork, clone, and submit a PR, but you can work offline with git while making your changes. This is one of the greatest benefits of git compared to svn, for example.

These are the recommended tools you need:-
- A laptop or a desktop computer capable of running tools which you would use for contribution.
- A stable internet connection to fork, clone a repo, make changes, and submit a PR.
- Install [Git](https://git-scm.com)- a version control system.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Install [Git](https://git-scm.com)- a version control system.
- [Git](https://git-scm.com) to work with the organization's repositories.

- A laptop or a desktop computer capable of running tools which you would use for contribution.
- A stable internet connection to fork, clone a repo, make changes, and submit a PR.
- Install [Git](https://git-scm.com)- a version control system.
- [A GitHub account](https://github.com). AsyncAPI hosts all its project source code and dependencies on GitHub. You'll need a GitHub account to create issues, fork the repository, submit pull requests, and more. If you're new to GitHub, familiarize yourself with [basic GitHub functionalities and workflows](https://docs.github.com/en/get-started).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

General recommendation: please be consistent with wording - I see differences in the following cases:

  • PR vs pull request
  • repo vs repository
  • VSCode vs VS Code (the last one is correct)

- A stable internet connection to fork, clone a repo, make changes, and submit a PR.
- Install [Git](https://git-scm.com)- a version control system.
- [A GitHub account](https://github.com). AsyncAPI hosts all its project source code and dependencies on GitHub. You'll need a GitHub account to create issues, fork the repository, submit pull requests, and more. If you're new to GitHub, familiarize yourself with [basic GitHub functionalities and workflows](https://docs.github.com/en/get-started).
- A code editor, such as [VS Code](https://code.visualstudio.com).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- A code editor, such as [VS Code](https://code.visualstudio.com).
- A code editor, such as [VS Code](https://code.visualstudio.com) to work on your changes.

- Install [Git](https://git-scm.com)- a version control system.
- [A GitHub account](https://github.com). AsyncAPI hosts all its project source code and dependencies on GitHub. You'll need a GitHub account to create issues, fork the repository, submit pull requests, and more. If you're new to GitHub, familiarize yourself with [basic GitHub functionalities and workflows](https://docs.github.com/en/get-started).
- A code editor, such as [VS Code](https://code.visualstudio.com).
- [Nodejs and npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm). So you can run the website locally on your machine.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- [Nodejs and npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm). So you can run the website locally on your machine.
- [Node.js and npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) to build and run the website locally.

- [A GitHub account](https://github.com). AsyncAPI hosts all its project source code and dependencies on GitHub. You'll need a GitHub account to create issues, fork the repository, submit pull requests, and more. If you're new to GitHub, familiarize yourself with [basic GitHub functionalities and workflows](https://docs.github.com/en/get-started).
- A code editor, such as [VS Code](https://code.visualstudio.com).
- [Nodejs and npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm). So you can run the website locally on your machine.
- A working browser such as Google Chrome, Firefox or Microsoft Edge where you can preview your changes.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- A working browser such as Google Chrome, Firefox or Microsoft Edge where you can preview your changes.
- A web browser, such as Google Chrome, Firefox or Microsoft Edge to preview your changes.

- A code editor, such as [VS Code](https://code.visualstudio.com).
- [Nodejs and npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm). So you can run the website locally on your machine.
- A working browser such as Google Chrome, Firefox or Microsoft Edge where you can preview your changes.
- Lastly, you need a command line terminal where you can run commands. You can use your local command line or the terminal in VSCode.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would place it right after the code editor and before Node.js

Suggested change
- Lastly, you need a command line terminal where you can run commands. You can use your local command line or the terminal in VSCode.
- Command-line terminal, such as the one included in your OS, or the terminal integrated in your code editor or IDE, to run commands.

- [A GitHub account](https://github.com). AsyncAPI hosts all its project source code and dependencies on GitHub. You'll need a GitHub account to create issues, fork the repository, submit pull requests, and more. If you're new to GitHub, familiarize yourself with [basic GitHub functionalities and workflows](https://docs.github.com/en/get-started).
- A code editor, such as [VS Code](https://code.visualstudio.com).
- [Nodejs and npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm). So you can run the website locally on your machine.
- A working browser such as Google Chrome, Firefox or Microsoft Edge where you can preview your changes.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about previewing Markdown documents that do not require spinning up a website and/or opening a browser?

@ezinneanne
Copy link
Contributor Author

@bandantonio I have made the requested changes, kindly review.

@bandantonio
Copy link
Contributor

@ezinneanne Have you considered enhancing and expanding the existing document community/docs/onboarding-guide/tools-and-setup instead of creating a new one?

@ezinneanne
Copy link
Contributor Author

@ezinneanne Have you considered enhancing and expanding the existing document community/docs/onboarding-guide/tools-and-setup instead of creating a new one?

Great idea! I would have to expand the existing document then

@thulieblack
Copy link
Member

But that one is specific for tech writers unless we create a docs for all?

@ezinneanne
Copy link
Contributor Author

I feel a general setup would be best @bandantonio @thulieblack

- Command-line terminal, such as the one included in your OS, or the terminal integrated in your code editor or IDE, to run commands.
- [Node.js and npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) to build and run the website locally.
- A web browser, such as Google Chrome, Firefox or Microsoft Edge to preview your changes.
- Markdown All-In-One VS Code extension to preview markdown documents.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line contradicts with a free choice of code editor (line 13).

Furthermore, VS Code has powerful out-of-the-box capabilities to work with Markdown documents, including preview., no extension needed. So, I would just mention something like "To preview minor changes in Markdown documents without spinning up a dev server, you can use out-of-the-box capabilities of your code editor, or install the corresponding extension. For more information, please consult your code editor's documentation."

@ezinneanne
Copy link
Contributor Author

ezinneanne commented Apr 7, 2025

@thulieblack @bandantonio I have made the requested changes. Since, we are using a general setup, should I delete the tools-setup.md file in my PR?

@thulieblack
Copy link
Member

Honestly, I don't really have an opinion here. Or maybe actually follow Anton's suggestion here #1777 (comment)

@bandantonio
Copy link
Contributor

Since, we are using a general setup, should I delete the tools-setup.md file in my PR?

@ezinneanne My proposal was to expand the existing document (tools-setup.md) not to delete it. I believe, you can move the information from the document you're creating in this pr (docs/onboarding-guide/recommended_tools.md) and combine it with the information intools-setup.md while removing all the unnecessary and redundant details. After that, you can delete the docs/onboarding-guide/recommended_tools.md document from this PR.

Comment on lines 8 to 10
This article covers the recommended tools you should have as a contributor. With these tools, you can set up workflows and begin making contributions.

These are the recommended tools:-
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This article covers the recommended tools you should have as a contributor. With these tools, you can set up workflows and begin making contributions.
These are the recommended tools:-

Comment on lines 11 to 17
- [Git](https://git-scm.com)- to work with the organization's repositories.
- [A GitHub account](https://github.com). AsyncAPI hosts all its project source code and dependencies on GitHub. You'll need a GitHub account to create issues, fork the repository, submit pull requests, and more. If you're new to GitHub, familiarize yourself with [basic GitHub functionalities and workflows](https://docs.github.com/en/get-started).
- A code editor, such as [VS Code](https://code.visualstudio.com) to work on your changes.
- Command-line terminal, such as the one included in your OS, or the terminal integrated in your code editor or IDE, to run commands.
- [Node.js and npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) to build and run the website locally.
- A web browser, such as Google Chrome, Firefox or Microsoft Edge to preview your changes.
- To preview minor changes in Markdown documents without spinning up a dev server, you can use out-of-the-box capabilities of your code editor, or install the corresponding extension. For more information, please consult your code editor's documentation.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please double check my previous suggestions on updated formatting of this list. I don't see them implemented.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

am sorry, I checked previous suggestions but I can't find the one on formatting of lists. Can you please guide me to it?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't worry, just a few of them. I left a few comments with explanations. Please have a look.

Copy link

coderabbitai bot commented Apr 8, 2025

Walkthrough

The onboarding guide documentation was updated to provide a more comprehensive and detailed list of recommended tools and setup instructions for contributors. The section previously focused on basic hardware and software requirements for technical writers, but now outlines specific tools such as Git, a GitHub account, a code editor, a terminal, Node.js, npm, and a web browser. Additional instructions were included for previewing Markdown changes without running a development server. The document title and introductory sentence were also revised to reflect these expanded recommendations.

Changes

File(s) Change Summary
docs/onboarding-guide/tools-and-setup.md Updated document title and introduction; replaced "Tools for technical writers" section with a more detailed "Recommended Tools" section, listing specific tools and setup guidance for contributors.

Poem

In the warren where docs are born anew,
We sharpen our tools, as contributors do.
With editors, Git, and browsers in tow,
The guide now shows all you need to know.
Markdown previews and setup with care—
Let’s build together, a well-prepared hare! 🐇✨

Tip

⚡💬 Agentic Chat (Pro Plan, General Availability)
  • We're introducing multi-step agentic chat in review comments and issue comments, within and outside of PR's. This feature enhances review and issue discussions with the CodeRabbit agentic chat by enabling advanced interactions, including the ability to create pull requests directly from comments and add commits to existing pull requests.

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

♻️ Duplicate comments (1)
docs/onboarding-guide/recommended_tools.md (1)

13-13: 🛠️ Refactor suggestion

Code Editor Recommendation Neutrality

The phrase "A code editor, such as [VS Code]" may imply a default recommendation rather than emphasizing free choice. Rewording it to underscore that contributors are free to choose their editor would avoid any potential misinterpretation.

- - A code editor, such as [VS Code](https://code.visualstudio.com) to work on your changes.
+ - A code editor of your choice, e.g. [VS Code](https://code.visualstudio.com), to work on your changes.
🧹 Nitpick comments (3)
docs/onboarding-guide/recommended_tools.md (3)

7-7: Heading Consideration: Duplication Alert

The header "# Contributor - Recommended Tools" is clear; however, it duplicates context already provided by the YAML title. Consider simplifying it to "# Recommended Tools" if the inclusion of "Contributor" is redundant.


10-10: List Introduction Formatting

The introduction line "These are the recommended tools:-" contains an extra dash after the colon. Removing the dash will improve clarity.

-These are the recommended tools:-
+These are the recommended tools:

11-11: Bullet List Spacing

For the Git tool entry, ensure proper spacing around the hyphen for better readability.

- - [Git](https://git-scm.com)- to work with the organization's repositories.
+ - [Git](https://git-scm.com) - to work with the organization's repositories.
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between c1a1c24 and 20a84e9.

📒 Files selected for processing (1)
  • docs/onboarding-guide/recommended_tools.md (1 hunks)
🔇 Additional comments (6)
docs/onboarding-guide/recommended_tools.md (6)

1-4: YAML Header: Proper Configuration

The YAML front matter correctly defines the document title and weight for ordering. No issues found here.


12-12: GitHub Account Entry Clarity

The entry for a GitHub account is detailed and helpful. It clearly explains its necessity and even directs new users to learn about GitHub functionalities. No action required.


14-14: Command-line Terminal Description

The description correctly explains the purpose and options for using a command-line terminal. It covers both the default OS terminal and integrated editor terminals.


15-15: Node.js and npm Entry

This entry is succinct and provides the correct documentation link. It clearly communicates the requirement for local development.


16-16: Web Browser Recommendation

The web browser entry offers clear choices among popular browsers, which is appropriate for previewing changes.


17-17: Markdown Preview Guidance

The guidance for previewing minor Markdown changes without a dev server is well-stated. It informs contributors of the capability available in many editors (or via extensions) and directs them to consult their editor’s documentation.

This article covers the recommended tools you should have as a contributor. With these tools, you can set up workflows and begin making contributions.

These are the recommended tools:-
- [Git](https://git-scm.com)- to work with the organization's repositories.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lists must be consistent in formatting/styling. Overall, this list is consistent except for the first two bullets - you have the following format: a tool name at the beginning and description of its purpose - <tool> to <purpose>

Pay attention that this bullet still has an inconsistent dash symbol after the link (which I highlighted in my previous suggestion)


These are the recommended tools:-
- [Git](https://git-scm.com)- to work with the organization's repositories.
- [A GitHub account](https://github.com). AsyncAPI hosts all its project source code and dependencies on GitHub. You'll need a GitHub account to create issues, fork the repository, submit pull requests, and more. If you're new to GitHub, familiarize yourself with [basic GitHub functionalities and workflows](https://docs.github.com/en/get-started).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This bullet is also slightly inconsistent, because it has a full stop after the tool name instead of describing its purpose. At first, I felt that it is ok, since the phrasing is a bit long, so I didn't mention it in suggestions. But now I see that it can be simplified, like this:

Suggested change
- [A GitHub account](https://github.com). AsyncAPI hosts all its project source code and dependencies on GitHub. You'll need a GitHub account to create issues, fork the repository, submit pull requests, and more. If you're new to GitHub, familiarize yourself with [basic GitHub functionalities and workflows](https://docs.github.com/en/get-started).
- [A GitHub account](https://github.com) to fork AsyncAPI repositories, create issues, submit pull requests, and participate in discussions. If you're new to GitHub, familiarize yourself with [basic GitHub functionalities and workflows](https://docs.github.com/en/get-started).

@ezinneanne
Copy link
Contributor Author

@bandantonio I have made the requested changes, kindly review.


Technical writer contributors need the following tools to contribute to AsyncAPI documentation effectively:
## Recommended Tools
These are the recommended tools:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This phrase is redundant

@ezinneanne
Copy link
Contributor Author

@bandantonio @thulieblack I have removed the redundant phrase, I await your reviews.

Copy link
Member

@thulieblack thulieblack left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work Ezinne!

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (2)
docs/onboarding-guide/tools-and-setup.md (2)

6-6: Intro sentence improved, but can be more concise.

The sentence is clear, but could be streamlined for readability. Consider:
"Below are the recommended tools for contributors and instructions for setting up the AsyncAPI website locally."


8-15: Comprehensive and clear tool recommendations, but minor grammar improvement needed.

The list is thorough and well-structured. However, in line 14, add a comma after "Firefox" for correct punctuation:
"...such as Google Chrome, Firefox, or Microsoft Edge..."

Apply this diff for the fix:

🧰 Tools
🪛 LanguageTool

[uncategorized] ~14-~14: Possible missing comma found.
Context: ... as Google Chrome, Firefox or Microsoft Edge to preview your changes. - To preview ...

(AI_HYDRA_LEO_MISSING_COMMA)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between d0df683 and 4bf0b9e.

📒 Files selected for processing (1)
  • docs/onboarding-guide/tools-and-setup.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/onboarding-guide/tools-and-setup.md

[uncategorized] ~14-~14: Possible missing comma found.
Context: ... as Google Chrome, Firefox or Microsoft Edge to preview your changes. - To preview ...

(AI_HYDRA_LEO_MISSING_COMMA)

🔇 Additional comments (3)
docs/onboarding-guide/tools-and-setup.md (3)

2-2: Title update is clear and appropriate.

Changing the title to "Recommended tools and setup" accurately reflects the expanded scope of the document.


15-15: Excellent tip for Markdown previewing.

The advice about previewing Markdown changes without a dev server is helpful and inclusive for various editors.


17-48: Setup instructions are clear and actionable.

The step-by-step setup guide is accurate, easy to follow, and covers all necessary steps for new contributors.

🧰 Tools
🪛 LanguageTool

[grammar] ~17-~17: This sentence should probably be started with a verb instead of the noun ‘Setup’. If not, consider inserting a comma for better clarity.
Context: ...t your code editor's documentation. ## Setup your AsyncAPI local environment 1. Fork...

(SENT_START_NN_DT)

@thulieblack
Copy link
Member

/rtm

@asyncapi-bot asyncapi-bot merged commit 8be4c0a into asyncapi:master Apr 16, 2025
12 checks passed
@ezinneanne ezinneanne deleted the recommended_tools branch April 17, 2025 04:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants