Skip to main content

Contributing

Code of Conduct​

Please make sure to read and observe our Code of Conduct.

Community Membership​

KubeEdge is a community project driven by its community which strives to promote a healthy, friendly and productive environment. The goal of the community is to develop a cloud native edge computing platform built on top of Kubernetes to manage edge nodes and devices at scale and demonstrate resiliency, reliability in offline scenarios. To build a platform at such scale requires the support of a community with similar aspirations.

  • See Community Membership for a list of various community roles. With gradual contributions, one can move up in the chain.

Contribute to KubeEdge​

We're always excited to welcome new contributors! Here's how to get started:

Getting Started​

  1. Fork the repository on GitHub
  2. Clone your fork to your local machine:
    git clone https://github.com/YOUR-USERNAME/kubeedge.git
    cd kubeedge
  3. Read the Developer Guide to learn how to build and test KubeEdge

Find Something to Work On​

There are several ways to find issues to work on:

  • Good First Issues: Look for issues labeled good first issue - these are beginner-friendly and don't require deep system knowledge
  • Help Wanted: Check issues labeled help wanted for areas where the community needs assistance
  • Documentation improvements: Fix broken links, clarify confusing sections, or add missing documentation
  • Bug reports: File issues when you encounter problems - even reporting bugs is a valuable contribution!

When you find an issue you'd like to work on, comment with /assign or /assign @yourself to assign it to yourself.

Contributor Workflow​

Here's the typical workflow for contributing code:

  1. Create a topic branch from master:

    git checkout -b my-feature-branch
  2. Make your changes with clear, logical commits

  3. Write good commit messages following this format:

    <subsystem>: <what changed>

    <why this change was made>

    Fixes #issue-number
  4. Test your changes locally before submitting:

    make verify          # Run verification checks
    make lint # Run linting
    make test # Run unit tests
    make integrationtest # Run integration tests
  5. Push to your fork and create a pull request to kubeedge/kubeedge

  6. Address review feedback - PRs require approval from two maintainers

Contribute to Documentation​

Documentation is a critical part of KubeEdge, and we welcome contributions to improve it! The KubeEdge documentation website is built using Docusaurus and hosted in a separate repository.

The documentation source files are maintained in the kubeedge/website repository.

How to Contribute to Docs​

  1. Fork the website repository:

    git clone https://github.com/YOUR-USERNAME/website.git
    cd website
  2. Set up the local environment: Using npm (requires Node.js):

    npm install
    npm start

    This will start a local development server at http://localhost:3000 where you can preview your changes. Or you can use Docker/Devcontainer if you want.

  3. Make your documentation changes:

  4. Preview your changes locally to ensure formatting and links work correctly

  5. Submit a pull request to kubeedge/website following the same workflow as code contributions

For more information about contributing to the documentation, visit the website repository.