The Drupal Core project provides the base functionality of Drupal. You can contribute to improving its design, code, documentation, and translations. The following groups are actively engaged in helping new contributors to join the project:

Drupal documentation is constantly evolving. You can learn about getting started with contribution at:

As collaboration on contribution to Drupal code is such an integral part of the community, there are many ways to communicate with others doing the same and to learn from them. Some examples:

In an effort to minimize the risk of introducing regressions in minor releases, the Drupal core project also has a beta testing program. Many companies and Drupal users are looking to help with core development but are not always sure where to start. Testing out beta releases is a great way to give back. You can learn more about the beta test program, and apply to participate here.

Tasks and Roles in this area

Accessibility group member (Contributor role)
Improve the accessibility of Drupal core and contributed modules, themes, and distributions
Duration:
ongoing
Add screenshots to an issue (Contributor task)
Add screenshots to an existing issue to make the issue clearer
Duration:
1 hour
Backport a patch (Contributor task)
After a patch has been committed to the latest development version of a project, adapt it for an earlier version
Duration:
1 hour
Create a follow-up issue (Contributor task)
Open a new issue to deal with follow-up tasks from an existing issue
Duration:
20 minutes
Create a merge request for an issue (Contributor task)
Add or update a "merge request" (software fix) on an issue
Duration:
1 hour
Create a patch for an issue (Contributor task)
Add a "patch" (software fix) to an existing issue
Duration:
1 hour
Create a Tour (Contributor task)
Create a new tour that documents an administrative page, using the Drupal core Tours module.
Duration:
1 hour
Document steps to reproduce an issue (Contributor task)
Document the steps to reproduce a reported issue so a developer can work to fix it.
Duration:
1 hour
Documentation editor (Contributor role)
Edit and proofread Drupal documentation
Duration:
ongoing
Drupal core committer (Contributor role)
Perform final review and commit on community-suggested improvements to Drupal core
Duration:
ongoing
Drupal core initiative coordinator (Contributor role)
Lead development for a Drupal core initiative
Duration:
ongoing
Drupal core subsystem maintainer (Contributor role)
Oversee the development of a module, theme, or other subset of Drupal core
Duration:
ongoing
Drupal core topic maintainer (Contributor role)
Review issues in a given topic in Drupal core
Duration:
ongoing
Handle or refer a support request in an issue (Contributor task)
Answer a support question, or refer the person to a more appropriate resource for support
Duration:
20 minutes
Licensing Working Group member (Contributor role)
Establish and enforce Drupal licensing policies
Duration:
ongoing
Major issue triage lead (Contributor role)
Recruit mentors and train them on how to triage major Drupal Core issues
Duration:
several days
Manually test a proposed fix for an issue (Contributor task)
Manually test a patch or merge request that has been proposed as the fix for an issue
Duration:
20 minutes
Mentor (Contributor role)
Inspire, enable, and encourage new core contributors. Work on the core tools and process for mentoring
Duration:
several hours
Participate in a Usability meeting (Contributor task)
Attend a Usability group meeting. Participate in or lead usability reviews.
Duration:
1 hour
Project contributor (Contributor role)
Contribute your time to Drupal core or a contributed module, theme, or distribution project
Duration:
ongoing
Reroll a patch (Contributor task)
Find an issue that has a patch that needs to be updated to apply to the current software base, and update it
Duration:
20 minutes
Review a patch or merge request (Contributor task)
Review a software fix proposed by a different developer
Duration:
20 minutes
Security Team member (Contributor role)
Help to oversee software security for the Drupal project
Duration:
ongoing
Software tester (Contributor role)
Manually test Drupal core or contributed modules, themes, or distributions
Duration:
ongoing
Test a patch or merge request for accessibility (Contributor task)
Perform accessibility tests for a proposed software fix (patch or merge request)
Duration:
20 minutes
Triage an issue report (Contributor task)
Evaluate and fix up or close a bug report issue
Duration:
20 minutes
Triage Novice issues and tasks (Contributor task)
Choose issues and tasks for a novice contribution event
Duration:
several hours
Triage the Drupal core RTBC queue (Contributor task)
Review and update Drupal core issues that have been marked Reviewed and Tested by the Community
Duration:
20 minutes
Usability group member (Contributor role)
Improve the usability of Drupal core and contributed modules, themes, and distributions
Duration:
ongoing
Verify an old patch or merge request (Contributor task)
Determine whether an old patch or merge request still applies and passes automated tests
Duration:
1 hour
Write a change record for a Drupal core issue (Contributor task)
Create a page that documents a change made to Drupal core on an issue.
Duration:
20 minutes
Write a release note for an issue (Contributor task)
Write release notes that will be included on a Drupal release page.
Duration:
1 hour
Write an automated test for an issue (Contributor task)
Write PHP automated test code for an issue.
Duration:
1 hour
Write an issue summary for an existing issue (Contributor task)
Find an issue that needs its summary updated/added, and write a summary for it
Duration:
20 minutes

Skills used

There are tasks and roles in this area that require these skills:

Accessibility
Testing and improving web site accessibility for people with disabilities
Drupal site administration
Updating site configuration, managing content, managing user accounts
Drupal site building
(need review) Installing modules, building content types, creating taxonomy vocabularies, creating views, making menus, etc.
Editing (English)
(needs review) Editing and proofreading English text
HTML coding
Writing valid and modern HTML code
Local development environment installation
Setting up a local development environment for Drupal sites
Making screenshots
Making usable screenshots of a web page or command-line window
Mentoring
Build confidence in novices by helping novices complete relevant tasks
PHP coding/programming
Writing code in PHP
Project management
(needs review) Managing people who are doing a project together
Providing support
Sharing knowledge in a way that empowers Drupal users.
Software testing (quality assurance, or QA)
(needs review) Testing web software
Technical writing (English)
Ability to communicate well about technical topics in written English
Usability and user interface design
(needs details) Ability to design highly-usable user interfaces
Using Git
(needs details) Applying patches, making patches, using branches and tags
Web site security
(needs details) Protecting a web site from malicious users
Wrangling volunteers
(needs review) Recruiting volunteers to help with an event or other project
Writing automated tests
(needs review) Writing tests that check the functionality of a website

Help improve this page

Create an issue describing the problem.

Need help deciding how to contribute?

Visit the Community landing page to learn more about the Drupal community, or start at the top of the Contributor Guide to find roles and tasks organized by skills and community areas.

Need help completing a task?

Check out the Getting help with contributing section.