diff --git a/docusaurus/docs/contributing/blog.md b/docusaurus/docs/contributing/blog.md index b8936aab2f1..3b44b2da04c 100644 --- a/docusaurus/docs/contributing/blog.md +++ b/docusaurus/docs/contributing/blog.md @@ -53,7 +53,7 @@ This is based on ImageMagick. Submit your blog by creating a Pull Request at -Please make sure the CI turns green, and if the CI fail, you need to check the error messages and fix all the problems before we can continue processing it. +Please make sure the CI turns green, and if the CI fails, you need to check the error messages and fix all the problems before we can continue processing it. ## Support diff --git a/docusaurus/docs/contributing/code-of-conduct.md b/docusaurus/docs/contributing/code-of-conduct.md new file mode 100644 index 00000000000..ce2bb1e1fca --- /dev/null +++ b/docusaurus/docs/contributing/code-of-conduct.md @@ -0,0 +1,78 @@ +--- +title: Wechaty Community Code of Conduct +--- + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to make participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, sex characteristics, gender identity and expression, +level of experience, education, socio-economic status, nationality, personal +appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +- Using welcoming and inclusive language +- Being respectful of differing viewpoints and experiences +- Gracefully accepting constructive criticism +- Focusing on what is best for the community +- Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +- The use of sexualized language or imagery and unwelcome sexual attention or + advances +- Trolling, insulting/derogatory comments, and personal or political attacks +- Public or private harassment +- Publishing others' private information, such as a physical or electronic + address, without explicit permission +- Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies within all project spaces, and it also applies when +an individual is representing the project or its community in public spaces. +Examples of representing a project or community include using an official +project e-mail address, posting via an official social media account, or acting +as an appointed representative at an online or offline event. Representation of +a project may be further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at [INSERT EMAIL ADDRESS]. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see + diff --git a/docusaurus/docs/contributing/contributor-program.md b/docusaurus/docs/contributing/contributor-program.md index f30ea9e9f23..88c66defce4 100644 --- a/docusaurus/docs/contributing/contributor-program.md +++ b/docusaurus/docs/contributing/contributor-program.md @@ -6,11 +6,11 @@ sidebar_label: Contributor program The _Wechaty Contributor Program_ provides valuable supports for qualified contributors. -> Our Mission: build the most easy to use conversational SDK across all messaging platforms for chatbot makers. +> Our Mission: build the most easy-to-use conversational SDK across all messaging platforms for chatbot makers. -It takes a community to design, build, and ship great chatbot. +It takes a community to design, build, and ship a great chatbot. -Building an chatbot that on top of Wechaty? Apply for our Contributor Program! The possibilities are endless, and you enjoy the kudos. +Building a chatbot that is on top of Wechaty? Apply for our Contributor Program! The possibilities are endless, and you enjoy the kudos. ## Table of Contents @@ -29,7 +29,7 @@ Learn more about Wechaty Puppet Services from our [document](../puppet-services/ ## 2. Support the Wechaty Project -You can help the project by supporting this project as becoming a backer. [![Backers on Open Collective](https://opencollective.com/wechaty/backers/badge.svg)](#backers) +You can help the project by supporting this project as becoming a backer. [![Backers on Open Collective](https://opencollective.com/wechaty/backers/badge.svg)](#backers) The following are our existing backers. Thank you to everyone! 🙏 [[Become a backer](https://opencollective.com/wechaty#backer)] @@ -39,7 +39,7 @@ The following are our existing backers. Thank you to everyone! 🙏 [[Become a b [![Wechaty Contributor Program](https://img.shields.io/badge/Wechaty-Contributor%20Program-green.svg)](https://wechaty.js.org/docs/contributing/) -You need to add the __Wechaty Contributor Program__ badge after you join this program. +You need to add the **Wechaty Contributor Program** badge after you join this program. ```md [![Wechaty Contributor Program](https://img.shields.io/badge/Wechaty-Contributor%20Program-green.svg)](https://wechaty.js.org/docs/contributing/) @@ -82,7 +82,7 @@ Add this Wechaty badge to your README: Then add it to the list at [Project using Wechaty](http://wechaty.js.org/docs/case-study/projects-using-wechaty) -## Third Party Supports for Wechaty Contributors +## Third-Party Supports for Wechaty Contributors ### Juzi.BOT diff --git a/docusaurus/docs/contributing/devops.md b/docusaurus/docs/contributing/devops.md index edb9c72689c..841cf8de76b 100644 --- a/docusaurus/docs/contributing/devops.md +++ b/docusaurus/docs/contributing/devops.md @@ -8,4 +8,4 @@ To-be-added. (Pull Request is welcome!) ## Blog -- [Wonderful Wechaty devops toolset, @windmemory, Jun 20, 2020](https://wechaty.js.org/2020/06/20/wonderful-wechaty-devops-tools/) +- [Wonderful Wechaty DevOps toolset, @windmemory, Jun 20, 2020](https://wechaty.js.org/2020/06/20/wonderful-wechaty-devops-tools/) diff --git a/docusaurus/docs/contributing/documentation.md b/docusaurus/docs/contributing/documentation.md index a1f95bf0d09..bf57c20b77e 100644 --- a/docusaurus/docs/contributing/documentation.md +++ b/docusaurus/docs/contributing/documentation.md @@ -2,12 +2,24 @@ title: Write documentation --- -We place a high importance on consistency and readability of documentation. +We place high importance on the consistency and readability of documentation. We aim to improve it as often as possible. Documentation changes generally come in two forms: -- General improvements: typo corrections, error fixes and better +- General improvements: typo corrections, error fixes, and better + explanations through clearer writing and more examples. + +--- + +## title: Write documentation + +We place high importance on the consistency and readability of documentation. +We aim to improve it as often as possible. + +Documentation changes generally come in two forms: + +- General improvements: typo corrections, error fixes, and better explanations through clearer writing and more examples. - New features: documentation of features that have been added to the @@ -20,7 +32,7 @@ in the most useful and least error-prone ways. Though Wechaty's documentation is intended to be read as HTML at , we edit it as a collection of markdown files for -maximum flexibility. These files live in the top-level ``docusaurus/docs/`` +maximum flexibility. These files live in the top-level `docusaurus/docs/` directory at Wechaty Website repository at . If you'd like to start contributing to our docs, get the latest version of @@ -46,12 +58,9 @@ Then build the website: npm run docusaurus:start ``` -To get started contributing, you'll want to read the :ref:`reStructuredText -reference `. - -Your locally-built documentation will be themed differently than the +Our locally-built documentation will be themed differently than the documentation at [Docusaurus docs introduction](https://docusaurus.io/docs/docs-introduction). -This is OK! If your changes look good on your local machine, they'll look good +This is OK! If the changes look good on the local machine, they'll look good on the website. ## How the documentation is organized @@ -62,15 +71,12 @@ The documentation is organized into several categories: of steps to create something. The important thing in a tutorial is to help the reader achieve something - useful, preferably as early as possible, in order to give them confidence. + useful, preferably as early as possible, to give them confidence. - Explain the nature of the problem we're solving, so that the reader - understands what we're trying to achieve. Don't feel that you need to begin - with explanations of how things work - what matters is what the reader does, - not what you explain. It can be helpful to refer back to what you've done and - explain afterwards. + Explain the nature of the problem we're solving, so that the reader understands what we're trying to achieve. Don't feel that you need to begin with explanations of how things work - what matters is what the reader does, + not what you explain. It can be helpful to refer back to what you've done and explain afterward. -- [explanations](explanations/overview.mdx) aim to explain a concept or subject at a +- [Explainations](explanations/overview.mdx) aim to explain a concept or subject at a fairly high level. Link to reference material rather than repeat it. Use examples and don't be @@ -85,7 +91,7 @@ The documentation is organized into several categories: its use. Keep reference material tightly focused on the subject. Assume that the - reader already understands the basic concepts involved but needs to know or + the reader already understands the basic concepts involved but needs to know or be reminded of how Wechaty does it. Reference guides aren't the place for general explanation. If you find @@ -96,32 +102,33 @@ The documentation is organized into several categories: steps in key subjects. What matters most in a how-to guide is what a user wants to achieve. - A how-to should always be result-oriented rather than focused on internal - details of how Wechaty implements whatever is being discussed. + A how-to should always be result-oriented rather than focused on internal details of how Wechaty implements whatever is being discussed. - These guides are more advanced than tutorials and assume some knowledge about - how Wechaty works. Assume that the reader has followed the tutorials and don't - hesitate to refer the reader back to the appropriate tutorial rather than + In how-to guides, users are expected to take the initiative and look for the information they need themselves. Contents in this section are organized as recipes to a cookbook. Each topic is independent and is named after the result that users will achieve after they follow the steps inside. With that said, the target audience for this section is those equipped with at least basic knowledge of Wechaty. + + These guides are more advanced than tutorials and assume some knowledge about how Wechaty works. Assume that the reader has followed the tutorials and don't hesitate to refer the reader back to the appropriate tutorial rather than repeat the same material. ## Writing style -When using pronouns in reference to a hypothetical person, such as "a user with -a session cookie", gender neutral pronouns (they/their/them) should be used. +When using pronouns about a hypothetical person, such as "a user with +a session cookie", gender-neutral pronouns (they/their/them) should be used. Instead of: - he or she... use they. - him or her... use them. -- his or her... use their. +- his or her... use theirs. - his or hers... use theirs. - himself or herself... use themselves. Try to avoid using words that minimize the difficulty involved in a task or operation, such as "easily", "simply", "just", "merely", "straightforward", and -so on. People's experience may not match your expectations, and they may become +so on. People's experience may not match the expectations, and they may become frustrated when they do not find a step as "straightforward" or "simple" as it is implied to be. +We are following the [Google developer documentation style guide](https://developers.google.com/style). We suggest that you follow it. + ## Commonly used terms Here are some style guidelines on commonly used terms throughout the @@ -146,6 +153,10 @@ documentation: ## Wechaty-specific terminology +- **Bot** — it's capitalized. + +- **Chatbot** — it's capitalized. + - **Puppet** — it's capitalized. - **Puppet Provider** — it's capitalized. @@ -154,6 +165,14 @@ documentation: - **TOKEN** — it's all capitalized. +- **Wechaty Puppet Service Token** — it's capitalized. + +- **Software Development Kit** — it's all capitalized. + +- **Wechaty gRPC** — it's all capitalized. + +Other than these words we are following this . + ## Guidelines for Markdown files These guidelines regulate the format of our MD (Markdown) and MDX (Markdown + JSX) @@ -165,11 +184,10 @@ documentation: is significantly less readable when split over two lines, or for another good reason. -- The main thing to keep in mind as you write and edit docs is that the - more semantic markup you can add the better. So: +- The main thing to keep in mind as you write and edit docs is that the more semantic markup you can add the better. So: ```md - Add `django.contrib.auth` to your `INSTALLED_APPS`... + Add `django.contrib.auth` to the `INSTALLED_APPS`... ``` - Use these heading styles:: @@ -182,10 +200,18 @@ documentation: ### Three #### Four - + ##### Five ``` + Refer to this for more: . + ## Special Thanks I have to credit Django doc authors, because this documentation page is inspired by, and mostly copy/pasted from [Django contributing docs](https://github.com/django/django/blob/main/docs/internals/contributing/writing-documentation.txt) + +- New features: documentation of features that have been added to the + framework since the last release. + +This section explains how writers can craft their documentation changes +in the most useful and least error-prone ways. diff --git a/docusaurus/docs/contributing/getting-help.md b/docusaurus/docs/contributing/getting-help.md new file mode 100644 index 00000000000..0d7dea14c69 --- /dev/null +++ b/docusaurus/docs/contributing/getting-help.md @@ -0,0 +1,15 @@ +--- +title: Getting Help +--- + +## Contact Us + +If you have any questions, comments, or concerns, please contact us at: + +- You can [join our Gitter](https://gitter.im/wechaty/wechaty) network if you aren’t already a member. + +- Join the [Wechaty channel](https://gitter.im/wechaty/wechaty) on Gitter.im and answer questions By explaining Wechaty to other users, you're going to learn a lot about the framework yourself. + +- Join the [GitHub Discussions](https://github.com/wechaty/wechaty/discussions). This forum is a place for discussing the Wechaty framework and applications and projects that use it. This is also a good place to ask and answer any questions related to installing, using, or contributing to Wechaty. + +- Join the [Google Group](https://groups.google.com/g/wechaty) and answer questions. diff --git a/docusaurus/docs/contributing/git.md b/docusaurus/docs/contributing/git.md index 1b06e1d56b3..6a542ae0797 100644 --- a/docusaurus/docs/contributing/git.md +++ b/docusaurus/docs/contributing/git.md @@ -13,12 +13,12 @@ be merged into Wechaty. ## Installing Git -Wechaty uses [Git][Git] for its source control. +Wechaty uses [Git][git] for its source control. You can [download](https://git-scm.com/download) Git, but it's often easier to install with your operating system's package manager. -Wechaty's [Git repository][Git repository] is hosted on [GitHub][GitHub], +Wechaty's [Git repository][git repository] is hosted on [GitHub][github], and it is recommended that you also work using GitHub. After installing Git, the first thing you should do is setup your name and @@ -33,9 +33,9 @@ Note that `user.name` should be your real name, not your GitHub nick. GitHub should know the email you use in the `user.email` field, as this will be used to associate your commits with your GitHub account. -[Git]: https://git-scm.com/ -[Git repository]: https://github.com/wechaty/wechaty/ -[GitHub]: https://github.com/ +[git]: https://git-scm.com/ +[git repository]: https://github.com/wechaty/wechaty/ +[github]: https://github.com/ ## Setting up local repository @@ -57,7 +57,7 @@ cd wechaty Your GitHub repository will be called "origin" in Git. -You should also setup ``wechaty/wechaty`` as an "upstream" remote (that is, tell +You should also setup `wechaty/wechaty` as an "upstream" remote (that is, tell git that the reference Wechaty repository was the source of your fork of it): ```sh @@ -74,7 +74,7 @@ git remote add huan git@github.com:huan/wechaty.git ## Working on an issue When working on an issue, create a new branch for the work, and base that work -on ``upstream/main``: +on `upstream/main`: ```sh git checkout -b ticket_xxxxx upstream/main @@ -129,8 +129,8 @@ their clone would become corrupt when you edit commits. There are also "public branches". These are branches other people are supposed to fork, so the history of these branches should never change. Good examples -of public branches are the ``main`` and ``stable/A.B.x`` branches in the -``wechaty/wechaty`` repository. +of public branches are the `main` and `stable/A.B.x` branches in the +`wechaty/wechaty` repository. When you think your work is ready to be pulled into Wechaty, you should create a pull request at GitHub. A good pull request means: @@ -227,10 +227,10 @@ If there are merge conflicts, you will need to resolve them and then use `git rebase --continue`. At any point you can use `git rebase --abort` to return to the original state. -Note that you want to *rebase* on upstream, not *merge* the upstream. +Note that you want to _rebase_ on upstream, not _merge_ the upstream. -The reason for this is that by rebasing, your commits will always be *on -top of* the upstream's work, not *mixed in with* the changes in the upstream. +The reason for this is that by rebasing, your commits will always be _on +top of_ the upstream's work, not _mixed in with_ the changes in the upstream. This way your branch will contain only commits related to its topic, which makes squashing easier. @@ -292,8 +292,8 @@ do to investigate the quality of the patch. - Announce your work on the issue by linking to your GitHub pull request. - When you have something ready, make a pull request. - Make your pull requests as good as you can. -- When doing fixes to your work, use ``git rebase -i`` to squash the commits. -- When upstream has changed, do ``git fetch upstream; git rebase``. +- When doing fixes to your work, use `git rebase -i` to squash the commits. +- When upstream has changed, do `git fetch upstream; git rebase`. ## Special Thanks diff --git a/docusaurus/docs/contributing/new-contributors.md b/docusaurus/docs/contributing/new-contributors.md index e28d86e7f1f..d4aed5bbcdc 100644 --- a/docusaurus/docs/contributing/new-contributors.md +++ b/docusaurus/docs/contributing/new-contributors.md @@ -70,7 +70,7 @@ some advice to make your work on Wechaty more useful and rewarding. When reading Issue, you need to take into account who says things, and when they were said. Support for an idea two years ago doesn't necessarily mean that the idea will still have support. You also need to pay attention to who - *hasn't* spoken -- for example, if an experienced contributor hasn't been + _hasn't_ spoken -- for example, if an experienced contributor hasn't been recently involved in a discussion, then a ticket may not have the support required to get into Wechaty. @@ -97,7 +97,7 @@ some advice to make your work on Wechaty more useful and rewarding. - **Err on the side of caution when marking things Ready For Check-in** If you're really not certain if a ticket is ready, don't mark it as - such. Leave a comment instead, letting others know your thoughts. If you're + such. Leave a comment instead, letting others know your thoughts. If you're mostly certain, but not completely certain, you might also try asking on Gitter to see if someone else can confirm your suspicions. diff --git a/docusaurus/docs/contributing/overview.md b/docusaurus/docs/contributing/overview.md index 8e15c84ad80..e6910e3f6dd 100644 --- a/docusaurus/docs/contributing/overview.md +++ b/docusaurus/docs/contributing/overview.md @@ -3,9 +3,24 @@ slug: /contributing/ title: Contributing to Wechaty --- -Wechaty is a community that lives on its volunteers. As it keeps growing, we -always need more people to help others. You can contribute in many ways, either -on the framework itself or in the wider ecosystem. +## Guidelines for Contributing + +Thank you for your time on Wechaty. + +This document explains the process of contributing to the Wechaty project. + +First of all please follow the [Wechaty Community Code of Conduct](code-of-conduct.md) in all your interactions within the project. + +Wechaty is a community that lives on its volunteers. As it keeps growing, we always need more people to help others. You can contribute in many ways, either to the framework itself or in the wider ecosystem. + +### Why contribute + +As an open-source product, Wechaty thrives on the contributions of community members. Whatever your skill set is, there is a lot you can do to help us make Wechaty better! +So start forking! + +### Not sure where to start? + +It's a myth that writing code is the only way to contribute to open source. Wechaty community is open to new ideas and there are so many different ways to make valuable contributions. We have some ideas of how you can get started! ## Work on the Wechaty framework @@ -16,6 +31,11 @@ The work on Wechaty itself falls into three major areas: Fix a bug, or add a new feature. You can make a pull request and see **your code** in the next version of Wechaty! +- Check out GitHub issues with the tags `good first issue`, `pull request welcome`, or `help wanted` +- Write code examples for documentation +- Report a bug and work on resolving it +- Collaborate with others on building new features + Start from the [writing code docs](coding.md). ### Writing documentation ✍️ @@ -24,18 +44,43 @@ Wechaty's documentation is one of its key strengths. It's informative and thorough. You can help to improve the documentation and keep it relevant as the framework evolves. +- Fix typos in documentation +- Translate documentation to your local language +- Write tutorials and blog posts, see more: +- Answer questions on the Wechaty Developers Home or Github issues +- Organize Wechaty meetups or user groups in your area + +Contact rui@Wechaty.io to learn more + See [writing documentation](documentation.md) for more. ### Building RPA Puppet Provider/Service 🗺️ -Wechaty supports over 10 Puppet Provider & Services. -The RPA team are always looking for hackers -to help maintain and increase IMs that Wechaty ecosystem should support. +Wechaty supports over 10 Puppet Providers & Services. +The RPA team is always looking for hackers +to help maintain and increase IMs that the Wechaty ecosystem should support. See [creating your puppet providers](../puppet-providers/diy.md) to help expand the RPA for Wechaty. -If you think working *with* Wechaty is fun, wait until you start working *on* +**Tips:** +If you want to add new features or change the API, please submit an issue first to make sure no one else is already working on the same thing and discuss the implementation and API details with maintainers and users by creating an issue. When everything is settled down, you can submit a pull request. + +Make sure to add tests for your features and bug fixes and update the documentation (see below) before submitting your code! + +### Contribute Support + +If you spot something new, open an issue using a [template](https://github.com/wechaty/openapi/issues/new/choose). We'll use the issue to have a conversation about the problem you want to fix. + +- Fix typos in documentation +- Translate documentation to your local language +- Write tutorials and blog posts, see more: +- Answer questions on the Wechaty Developers Home or Github issues +- Organize Wechaty meetups or user groups in your area + +Contact rui@Wechaty.io to learn more + +If you think working _with_ Wechaty is fun, wait until you start working _on_ it. Really, **ANYONE** can do something to help make Wechaty better and greater! This contributing guide contains everything you need to know to help build the @@ -47,6 +92,41 @@ Wechaty chatbot framework. Browse the following sections to find out how: - [Writing documentation](documentation.md) - [Committing code](pulls.md) +### Ready to make a change? Fork the repo + +Fork using GitHub Desktop: + +- [Getting started with GitHub Desktop](https://docs.github.com/en/desktop/installing-and-configuring-github-desktop/getting-started-with-github-desktop) will guide you through setting up Desktop. +- Once the Desktop is set up, you can use it to [fork the repo](https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/cloning-and-forking-repositories-from-github-desktop)! + +Fork using the command line: + +- [Fork the repo](https://docs.github.com/en/github/getting-started-with-github/fork-a-repo#fork-an-example-repository) so that you can make your changes without affecting the original project until you're ready to merge them. + +Fork with [GitHub Codespaces](https://github.com/features/codespaces): + +- [Fork, edit, and preview](https://docs.github.com/en/free-pro-team@latest/github/developing-online-with-codespaces/creating-a-codespace) using [GitHub Codespaces](https://github.com/features/codespaces) without having to install and run the project locally. + +#### Open a pull request + +When you're done making changes and you'd like to propose them for review, use the pull request template to open your PR (pull request). + +#### Submit your PR & get it reviewed + +- Once you submit your PR, others from the Docs community will review it with you. The first thing you're going to want to do is a [self-review](#self-review). +- After that, we may have questions, check back on your PR to keep up with the conversation. +- Did you have an issue, like a merge conflict? Check out our [git tutorial](https://lab.github.com/githubtraining/managing-merge-conflicts) on how to resolve merge conflicts and other issues. + +#### Your PR is merged + +Congratulations! The whole GitHub community thanks you. :sparkles: + +#### Suggested changes + +We may ask for changes to be made before a PR can be merged, either using [suggested changes](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/incorporating-feedback-in-your-pull-request) or pull request comments. You can apply suggested changes directly through the UI. You can make any other changes in your fork, then commit them to your branch. + +As you update your PR and apply changes, mark each conversation as [resolved](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/commenting-on-a-pull-request#resolving-conversations). + ## Join the Wechaty community ❤️ We're passionate about helping Wechaty users make the jump to contributing @@ -59,9 +139,7 @@ Wechaty community and others to maintain a great ecosystem to work in: framework yourself. - Join the [GitHub Discussions](https://github.com/wechaty/wechaty/discussions). - This forum is a place for discussing the Wechaty - framework and applications and projects that use it. This is also a good - place to ask and answer any questions related to installing, using, or + This forum is a place for discussing the Wechaty framework and applications and projects that use it. This is also a good place to ask and answer any questions related to installing, using, or contributing to Wechaty. - Join the [Google Group](https://groups.google.com/g/wechaty) and answer questions. @@ -70,13 +148,19 @@ Wechaty community and others to maintain a great ecosystem to work in: the [community blogs](https://wechaty.js.org/blog); if you'd like to see your blog on that page you can [register it here](blog.md). -- Contribute to open-source Wechaty projects, write some documentation, or - release your own code as an open-source pluggable application. The - ecosystem of pluggable applications is a big strength of Wechaty, help us +- Contribute to open-source Wechaty projects, write some documentation, or release your code as an open-source pluggable application. The ecosystem of pluggable applications is a big strength of Wechaty, help us build it! +**NOTE:** If you need any help, you can find related information in [Getting Help doc](getting-help.md) +. We're looking forward to working with you. Welcome aboard! ⛵️ +We built wechaty with pleasure because it can help others. Help from your contributions for wechaty will be very much appreciated by the community. + +Cheers! + +Huan + ## Special Thanks I have to credit Django doc authors, because this documentation page is inspired by, and mostly copy/pasted from [Django contributing docs](https://github.com/django/django/blob/main/docs/internals/contributing/index.txt) diff --git a/docusaurus/docs/contributing/pulls.md b/docusaurus/docs/contributing/pulls.md index 208b8ff636a..b4c0d572741 100644 --- a/docusaurus/docs/contributing/pulls.md +++ b/docusaurus/docs/contributing/pulls.md @@ -25,11 +25,10 @@ alias will be helpful: pr = !sh -c \"git fetch upstream pull/${1}/head:pr/${1} && git checkout pr/${1}\" ``` -Add it to your ``~/.gitconfig``, and set ``upstream`` to be ``wechaty/wechaty``. -Then you can run ``git pr ####`` to checkout the corresponding pull request. +Add it to your `~/.gitconfig`, and set `upstream` to be `wechaty/wechaty`. +Then you can run `git pr ####` to checkout the corresponding pull request. -At this point, you can work on the code. Use ``git rebase -i`` and ``git -commit --amend`` to make sure the commits have the expected level of quality. +At this point, you can work on the code. Use `git rebase -i` and `git commit --amend` to make sure the commits have the expected level of quality. Once you're ready: ```sh @@ -92,7 +91,7 @@ community, getting work done, and having a usable commit history. In addition, please follow the following guidelines when committing code to Wechaty's Git repository: -- Never change the published history of ``wechaty/wechaty`` branches by force +- Never change the published history of `wechaty/wechaty` branches by force pushing. If you absolutely must (for security reasons for example), first discuss the situation with the team. @@ -126,9 +125,9 @@ Wechaty's Git repository: ``` Credit the contributors in the commit message: "Thanks A for the report and B - for review." Use git's [Co-Authored-By][Co-Authored-By] as appropriate. + for review." Use git's [Co-Authored-By][co-authored-by] as appropriate. - [Co-Authored-By]: https://help.github.com/articles/creating-a-commit-with-multiple-authors/ + [co-authored-by]: https://help.github.com/articles/creating-a-commit-with-multiple-authors/ - For commits to a branch, prefix the commit message with the branch name. For example: "[1.4.x] Fixed #xxxxx -- Added support for mind reading." @@ -188,9 +187,9 @@ When a mistaken commit is discovered, please follow these guidelines: - The release branch maintainer may back out commits to the release branch without permission if the commit breaks the release branch. -- If you mistakenly push a topic branch to ``wechaty/wechaty``, delete it. - For instance, if you did: ``git push upstream feature_antigravity``, - do a reverse push: ``git push upstream :feature_antigravity``. +- If you mistakenly push a topic branch to `wechaty/wechaty`, delete it. + For instance, if you did: `git push upstream feature_antigravity`, + do a reverse push: `git push upstream :feature_antigravity`. ## Special Thanks diff --git a/docusaurus/sidebars.ts b/docusaurus/sidebars.ts index 0cf54666fa3..bee665f2353 100644 --- a/docusaurus/sidebars.ts +++ b/docusaurus/sidebars.ts @@ -97,6 +97,7 @@ const contributing: SubMenuData = { label: 'Contributing', items: [ 'contributing/overview', + 'contributing/code-of-conduct', 'contributing/new-contributors', 'contributing/documentation', 'contributing/contributor-program', @@ -104,6 +105,7 @@ const contributing: SubMenuData = { 'contributing/pulls', 'contributing/blog', 'contributing/coding', + 'contributing/getting-help', 'contributing/git', 'contributing/issues', 'contributing/testing',