Skip to content

Contributing to GenAI ๐ŸŒŸ

We're thrilled that you're interested in contributing to GenAI! Your contributions are essential for making GenAI better. Here are the guidelines to help you get started. ๐Ÿš€

Code of Conduct ๐Ÿ“œ

This project and everyone participating in it is governed by the GenAI Code of Conduct. By participating, you are expected to uphold this code. ๐Ÿค

How to Contribute ๐Ÿค”

You can contribute in many ways:

Reporting Bugs ๐Ÿ›

Bugs are tracked as GitHub issues. When you are creating a bug report, please include as many details as possible:

  • Use a clear and descriptive title for the issue to identify the problem. ๐Ÿท๏ธ
  • Describe the exact steps which reproduce the problem in as many details as possible. ๐Ÿ“
  • Provide specific examples to demonstrate the steps. ๐Ÿ”
  • Describe the behavior you observed after following the steps and why you find this behavior problematic. ๐Ÿค”
  • Explain which behavior you expected to see instead and why. โœจ

Suggesting Enhancements ๐Ÿ’ก

Enhancement suggestions are also tracked as GitHub issues. When suggesting an enhancement:

  • Use a clear and descriptive title for the issue to identify the suggestion. ๐Ÿท๏ธ
  • Provide a step-by-step description of the suggested enhancement in as many details as possible. ๐Ÿ“
  • Provide specific examples to demonstrate the steps or provide mock-ups. ๐Ÿ”
  • Explain why this enhancement would be useful to GenAI users. ๐ŸŒˆ

Your First Code Contribution ๐Ÿ‘ถ

Unsure where to begin contributing to GenAI? You can start by looking through the beginner and help-wanted issues:

  • Beginner issues - issues which should only require a few lines of code, and a test or two. ๐ŸŒฑ
  • Help wanted issues - issues which should be a bit more involved than beginner issues. ๐Ÿ†˜

Pull Requests ๐Ÿ‘

  • Fill in the required template. ๐Ÿ“ƒ
  • Do not include issue numbers in the PR title. โŒ
  • Include screenshots and animated GIFs in your pull request whenever possible. ๐Ÿ“ธ
  • Follow the Python styleguides. ๐Ÿ
  • Include thoughtfully-worded, well-structured tests. Mock external services and cover all use cases. ๐Ÿงช
  • Document new code based on the Documentation Styleguide. ๐Ÿ“š
  • End files with a newline. โ†ฉ๏ธ
  • Avoid platform-dependent code. ๐Ÿ’ป

Git Commit Messages ๐Ÿ“

  • Use the present tense ("Add feature" not "Added feature"). โœ…
  • Use the imperative mood ("Move cursor to..." not "Moves cursor to..."). ๐ŸŽฏ
  • Limit the first line to 72 characters or less. ๐Ÿ“
  • Reference issues and pull requests liberally after the first line. ๐Ÿ”—

Pull Request Process ๐Ÿ”„

  1. The pull request will be merged after review by a core team member. โœ”๏ธ

Community Guidelines and Code of Conduct ๐ŸŒ

We are committed to building a welcoming, inclusive, and respectful community. Here are some key points to remember:

  • Be kind and courteous to everyone. ๐Ÿ˜Š
  • Respect differing viewpoints and experiences. ๐Ÿค
  • Give and gracefully accept constructive feedback. ๐ŸŒŸ
  • Focus on what is best for the community. ๐ŸŒˆ

For a more detailed set of guidelines, please refer to our Code of Conduct, which outlines our expectations for participants, as well as the consequences for unacceptable behavior.

We hope these guidelines help make your experience a fruitful and enjoyable one.