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.