Thank you for considering contributing to the GovUK React Component Library! This document outlines the process for contributing to this project.
This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code.
This section guides you through submitting a bug report. Following these guidelines helps maintainers understand your report, reproduce the behavior, and find related reports.
- Use the GitHub issue search to check if the issue has already been reported.
- If you're unable to find an open issue addressing the problem, open a new one.
- Include a clear title and description, as much relevant information as possible, and a code sample or executable test case demonstrating the expected behavior that is not occurring.
This section guides you through submitting an enhancement suggestion, including completely new features and minor improvements to existing functionality.
- Use the GitHub issue search to check if the enhancement has already been suggested.
- If you're unable to find an open issue proposing the enhancement, open a new one.
- Include a clear title and description, and describe the current behavior and explain which behavior you expected to see instead and why.
- 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 JavaScript and CSS styleguides
- Include tests for your changes
- Document new code based on the documentation styleguide
- End all files with a newline
- 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
All JavaScript code is linted with ESLint and should adhere to the project's ESLint configuration.
All CSS/SCSS code should adhere to the project's styling conventions.
- Use Markdown for documentation.
- Reference methods and classes in markdown with the custom
{@link}syntax.
This section lists the labels we use to help us track and manage issues and pull requests.
bug- Issues that are bugsdocumentation- Issues or PRs related to documentationenhancement- Issues that are feature requests or PRs that implement featuresgood first issue- Good for newcomershelp wanted- Extra attention is needed