Contributing

CivicTheme is an open source project. There are numerous ways to contribute to CivicTheme whether you’re a developer, designer or a non-technical user.

What kind of contributions do we need?

CivicTheme benefits from any kind of contribution - whether it's a bugfix, new feature, documentation update, design update, or simply some queue maintenance - we're happy that you want to help!

Contributing to CivicTheme codebase

To ensure that contributions are accepted, they must meet the following requirements:

  1. The pull request should include a clear feature or problem description and a proposed resolution.

  2. The code should comply with Drupal's coding standards for consistency and readability.

  3. Automated tests, such as PHPUnit tests and/or Behat tests, should be added to verify the code's functionality.

  4. The continuous integration process should pass all checks to ensure that the code is stable and meets the project's quality standards.

  5. The pull request should undergo a thorough code review by project maintainers, who must approve the changes before they can be merged into the codebase.

There is a detailed section on how to set up the CivicTheme development environment on your local machine using Docker, available in the Development section.

Contributing to CivicTheme Design System

CivicTheme Design System contains contribution instructions.

Suggesting new features

Inspired by Yarn, Ember, and Rust, CivicTheme uses RFC process to allow core team members and community members to collaborate on the design of new features. It’s also intended to provide a clear path for ideas to enter the project:

  • Create an RFC document detailing your proposal as a GitHub issue.

  • Submit a PR

  • Incorporate feedback into the proposal.

  • After discussion, the core team may or may not accept the RFC.

  • If the RFC is accepted, the PR is merged.

RFCs are accepted when they are approved for implementation in CivicTheme. A more thorough description of the process is available in RFC process section.

I found an issue

We're always interested in fixing issues, therefore issue reports are very welcome. Please make sure to check that your issue does not already exist in the issue queue.

I have a feature request or idea

Cool! Create an issue and we're happy to look over it. We can't guarantee that it will be implemented. But we are always interested in hearing ideas of what we could bring to CivicTheme.

Another good way is also to talk to us via #civictheme-designsystem Slack about your idea. Join today!

I wrote some code

Awesome! Please send us a pull request for it, we will do our best to review it and merge it if possible.

For more information about CivicTheme and how to make contributions, please email civictheme@salsa.digital

Last updated