Skip to main content

Contributing to Wechaty

Guidelines for Contributing​

Thank you for your interest in contributing to Wechaty.

This post explains the process of contributing to the Wechaty project.

Wechaty is an open source software which is highly relied on volunteers to maintain. As we keep growing, we always welcome more people to join us. Please read through and abide by Wechaty Community Code of Conduct.

Why should you contribute?​

As an open source organization with a useful and viable product, Wechaty thrives on the contributions of the community members. Regardless of your skill set, there are numerous things that you can do to help make Wechaty better, so start forking!

Not sure where to start?​

It is a myth that writing code is the only way to contribute to open source. The Wechaty community is very open to new ideas and there are so many different ways to make valuable contributions. We even have some ideas on how you can get started!

Work on the Wechaty framework​

The work on Wechaty itself falls into three (3) major areas:

Writing code πŸ’»β€‹

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 the GitHub issues with the tags good first issue, pull request welcome, or help wanted
  • Write code examples for documentation
  • Report bugs and work on resolving it
  • Collaborate with others on building new features
  • Suggest enhancements and request features as GitHub issues

Start from the writing code docs.

Writing documentation βœοΈβ€‹

Documentation is one of the most important things that introduce Wechaty to general users. If you like teaching and sharing knowledge with other people, you are more than welcome to join our documentation project. Below are some ways you could contribute:

For more information, you may contact wechaty@googlegroups.com.

See writing documentation for more tips.

Building RPA Puppet Provider/Service πŸ—ΊοΈβ€‹

Wechaty supports over ten (10) Puppet Providers & Services. The RPA team is always looking for hackers to help maintain and increase the IMs that the Wechaty ecosystem should support.

See creating your puppet providers to help expand the RPA for Wechaty.

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 issue. Discuss the implementation and API details with the maintainers and users by creating an issue. When everything is settled down, you may 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. We'll use the issue to have a conversation about the problem you want to fix.

  • Fix typos in the documentation
  • Translate documentation to your local language
  • Write tutorials and blog posts, refer to https://github.com/wechaty/wechaty.js.org/tree/master/jekyll/_posts
  • Answer questions on the Wechaty Developers Home or GitHub issues
  • Organize Wechaty meetups or user groups in your area
  • Another way of contributing can be by following and sharing Wechaty content across social media platforms like YouTube, Gitter, etc.

For more information, you may contact wechaty@googlegroups.com.

If you think working with Wechaty is fun, wait until you start working on it. Apparently, ANYONE can do something to help make Wechaty better and greater!

This contributing guide contains everything you need to know to help build the Wechaty chatbot framework. Browse the following sections to find out how:

Ready to make a change? Fork the repo​

Fork using GitHub Desktop:

Fork using the command line:

  • Fork the repo so that you can make your changes without affecting the original project until you are ready to merge them.

Fork with GitHub Codespaces:

Open a pull request​

When you are done making changes and you'd like to propose them for review, use the pull request template to open your pull request (PR).

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 are going to want to do is a self-review.
  • After that, we may have questions so always check your PR to keep up with the conversation.
  • Did you have an issue such as a merge conflict? Check out our git tutorial on how to resolve merge conflicts and other issues.

Your PR is merged​

Congratulations! The whole GitHub community is thankful for your help! ✨

Suggested changes​

We may ask for changes to be made before a PR can be merged, either using suggested changes or pull request comments. You can apply suggested changes directly through the UI. You can make any other changes in your fork before committing them to your branch.

As you update your PR and apply changes, mark each conversation as resolved.

Join the Wechaty community ❀️​

We are passionate about helping Wechaty users make the jump to become contributing members of the community. There are several other ways you can help the Wechaty community and others to maintain a great ecosystem to work in:

  • Join the Wechaty channel on Gitter.im and answer questions. By explaining Wechaty to other users, you are going to learn a lot about the framework yourself.

  • Join the GitHub Discussions. This forum is a place for discussing the Wechaty framework, 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 and answer some questions.

  • Blog about Wechaty. We syndicate all the Wechaty blogs we know about on the community blogs; if you'd like to see your blog on that page, you can register it here.

  • Join the Wechaty Mailing List: Send an e-mail to wechaty@googlegroups.com and then, you are in!

  • Join the Wechaty WeChat Room: If you want to talk with other developers via WeChat, just scan the QR Code in WeChat with the secret code wechaty to join our Wechaty Developers' Home.

  • 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, so help us build it!

Know more about Wechaty πŸ“Œβ€‹

NOTE: If you need any help, you can find related information in Getting Help doc . We are looking forward to work with you. Welcome aboard! ⛡️

We have built Wechaty with pleasure because it can help others. Your help and contributions to Wechaty are very much appreciated by the community.

Special Thanks​

Wechaty would like to credit the Django doc authors because this documentation page is inspired by, and mostly copy-pasted from the Django contributing docs.