# Contribution guidelines We love contributions! We've compiled these docs to help you understand our contribution guidelines. If you still have questions, please [contact us](https://design-system.service.gov.uk/#support), we'd be super happy to help. ## Contents of this file ### For contributors - [Code of conduct](#code-of-conduct) - [Application architecture](#application-architecture) - [Running locally](#running-locally) - [Conventions to follow](#conventions-to-follow) - [Indentation and whitespace](#indentation-and-whitespace) - [CSS](#css) - [JavaScript](#javascript) - [Components and Nunjucks API](#components-and-nunjucks-api) - [Testing and linting](#testing-and-linting) - [Supported browsers](#supported-browsers) - [Commit hygiene](#commit-hygiene) - [Updating Changelog](#updating-changelog) - [Testing a release](#testing-a-release) ### For maintainers - [Application tasks](#running-application-tasks) - [Deploying](#deploying) - [Versioning](#versioning) - [Releasing a new version](#releasing-a-new-version) ## Code of Conduct Please read [the `alphagov` CODE_OF_CONDUCT.md](https://github.com/alphagov/.github/blob/main/CODE_OF_CONDUCT.md) before contributing. ## Application architecture See [application architecture](/docs/contributing/application-architecture.md) for an overview of the directories in this repository. ## Running locally See [running locally](/docs/contributing/running-locally.md). ## Conventions to follow ### Indentation and whitespace 2-space, soft-tabs only. No trailing whitespace. ### CSS See our [coding standards for CSS](/docs/contributing/coding-standards/css.md) and [testing](/docs/contributing/testing.md). ### JavaScript See our [coding standards for JavaScript](/docs/contributing/coding-standards/js.md) and [testing ](/docs/contributing/testing.md). ### Components and Nunjucks API See our [coding standards for components](/docs/contributing/coding-standards/components.md), [coding standards for Nunjucks macros](/docs/contributing/coding-standards/nunjucks-api.md) and [testing](/docs/contributing/testing.md). ## Testing and linting See [testing](/docs/contributing/testing.md). ## Supported browsers and assistive technology Your contribution needs to work with certain browsers and assistive technology as set out in [README](README.md#browser-and-assistive-technology-support). ## Commit hygiene Please see our [Git style guide in the 'How to store source code' page of the GDS Way](https://gds-way.digital.cabinet-office.gov.uk/standards/source-code/working-with-git.html#commit-messages), which describes how we prefer Git history and commit messages to read. ## Updating Changelog See the versioning documentation for [updating the changelog](/docs/contributing/versioning.md#updating-changelog) ## Testing a release If you need to test a release, for example if you're contributing a new component see [Publishing a preview of GOV.UK Frontend](/docs/releasing/publishing-a-preview.md). ## Application tasks See [tasks](/docs/contributing/tasks.md). ## Deploying See [deploying](/docs/contributing/running-locally.md#deploying). ## Releasing a new version See [publishing](/docs/releasing/publishing.md).