Contribute code

We invite developers of all skill levels to contribute code to PatternFly, either to advance our system with new features or to fix issues in our existing offerings.

Where do I start?

A great way to get familiar with our team and processes is to attend our biweekly office hours. You can listen in on discussions, get help with a problem, or sign up for a time to chat with the team.

When you're ready to contribute, the best place to start is by finding a "good first issue" in one of our repos.

Find a good first issue

"Good first issues" are tasks our team has identified as being well-suited for new community members. You can find these in our component repositories:

If you find an issue you'd like to work on, leave a comment and a team member will guide you. For questions, you can reach out on the #patternfly-core or #patternfly-react Slack channels.

Explore other code contributions

Beyond component issues, you can also contribute to our extensions or to the PatternFly.org website itself. For any of these repositories, you can leave a comment on an issue you're interested in or ask questions in our #general Slack channel.

AI-assisted development guidelines

AI-generated code can be accepted as a contribution to this project as long as the contributor adheres to the following guidance.

When using AI coding assistants (such as GitHub Copilot, ChatGPT, Claude, or other similar tools) to help with development work on PatternFly React, please follow these guidelines to ensure code quality, security, and transparency:

  1. Verify and validate AI-generated code.

    • Treat AI-generated code as suggestions, not final code. Review all generated code and modify as appropriate. Thoroughly review and test all code that you intend to integrate into your work.

    • Do not automatically trust the code assistant output. Always apply your own judgment and expertise. AI coding assistants can introduce security vulnerabilities if not used carefully, and AI models can sometimes hallucinate and provide incorrect or non-functional code.

    • Make sure you thoroughly understand any AI-generated code. If the generated code you intend to incorporate in your work is outside your expertise, consult with someone knowledgeable in the area prior to making it available to others.

  2. Mark any substantial AI-generated code portions.

    • Nontrivial and substantial AI-generated or AI-assisted content should be "marked", using one of the following approaches:

      • In a commit message, or in a pull request/merge request description field: Identify the code assistant that you used, perhaps elaborating on how it was used. You might also use a trailer like "Assisted-by:" or "Generated-by:". For example:

        Assisted-by: GitHub Copilot Generated-by: ChatGPT for initial component structure
      • In a source file comment: Indicate the use of the code assistant. For example:

        // Generated by GitHub Copilot
        // AI-assisted implementation with human review and modifications
  3. Review security: Pay special attention to security implications of AI-generated code, especially when dealing with user input, authentication, or data handling.

  4. Test your code: Ensure that AI-generated code is thoroughly tested and meets all existing project standards for testing coverage.

  5. Review code style: Verify that AI-generated code follows PatternFly React's coding standards and style guidelines as outlined in this document.

  6. Review documentation: If AI assists in generating documentation or comments, review them for accuracy and completeness.