We are always very happy to have contributions, whether for trivial cleanups or big new features.We want to have high quality, well documented codes for each programming language.

Nor is code the only way to contribute to the project. We strongly value documentation, integration with other project, and gladly accept improvements for these aspects.

Gitter

Mailing list

  • : The develop mailing list. You can ask questions here if you encounter any problem when using or developing Nacos.

  • commits-nacos@googlegroups.com: All commits will be sent to this mailing list. You can subscribe to it if you are interested in Nacos's development.

This is a rough outline of what a contributor's workflow looks like:

  • Fork the current repository.
  • Create a topic branch from where to base the contribution. This is usually the master branch.
  • Make commits of logical units.
  • Make sure commit messages are in the proper format (see below).
  • Push changes in a topic branch to your forked repository.
  • Follow the checklist in the
  • Before you send the pull request, please sync your forked repository with remote repository. This will make your pull request simple and clear. See guide below:
  • Submit a pull request to alibaba/nacos and wait for reply.
    Thanks for contributing!

To submit a change for inclusion, please do the following:

If the change is non-trivial, please include unit tests that cover the new functionality.

If you are introducing a completely new feature or API, it is a good idea to start a wiki and get consensus on the basic design first.

It is our job to follow up on patches in a timely fashion. Nag us if we aren't doing our job (sometimes we drop things).

We are always interested in adding new contributors. What we look for are series of contributions, good taste and ongoing interest in the project. If you are interested in becoming a committer, please let one of the existing committers know and they can help you walk through the process.

Wiki & JavaDoc

Nacos Console

Nacos SDK(C++.Net\PHP\Python\Go\Node.js)

Prerequisites

If you want to contribute to the above listing points, you must abide by the prerequisites listed below.

Readability - APIs as well as important methods must have Javadoc.
Testability - Ensure over 80% unit test coverage for main processes.
Maintainability - Comply with our PMD spec, with an update frequency at least once every 3 months.
Deployability - We encourage you to deploy into maven repository.