CiviCRM is an open project that's sustained by an incredible community!

Glad to see you here

CiviCRM is created and supported by a passionate community of people from around the world. By reading this, you're taking your first step into joining this community and helping sustain CiviCRM for the thousands of people who rely on it.

The CiviCRM community is open and welcoming, and always looking for fresh ideas and new approaches. That said, we've tried to make it as easy as possible to get started by defining how we operate and establishing what common opportunities exist for new contributors. We encourage you to read through this resource in order to become familiar with the CiviCRM community and to best prepare to participate with it.

First, let's dispel the common myth that only geeks can contribute to CiviCRM. That's just not true! Whatever your skill set, there are many ways that you can get involved and support CiviCRM.

That said, we realize that contributing to a project for the first time can feel daunting. Rest assured, we've all been there! No matter if you're a first time contributor or a veteran contributor to open source, we encourage you to dive right in!

Community Guidelines

As an open source project, CiviCRM affords its community flexibility in how it operates and gets things done. While there are few hard and fast rules or explicit processes, we do have foundational guidelines laid out to set expections, and to help guide community members to be positive, effective collaborators. These form the basis for engagement within the community.

CiviCRM is, at heart, a do-ocracy. You'll hear us say it and celebrate it often! In essence, that means that those that 'do', are able to get stuff 'done' in CiviCRM. But, since we all do things in different ways, organizing a do-ocracy like CiviCRM can be very challenging. We've spent time reviewing other successful models (many thanks Drupal, Joomla! and Ubuntu) and attempt to organize the CiviCRM do-ocracy using Groups and Projects.

Groups

As an open source project, CiviCRM is organized into various Groups that address distinct processes, operations or functions. Groups vary in size, scope and significance, and correspond to “Groups” in Gitlab, CiviCRM’s primary project management tool. They are ongoing in nature and form an umbrella over related projects. Groups are responsible for establishing and overseeing Projects. Example groups include:

DEVELOPMENT | MARKETING | DOCUMENTATION | EVENTS | EXTENSIONS

Projects

Projects are smaller initiatives that exist within groups, that are narrower in scope, often have beginning and end times, and typically involve fewer community members. Most initiatives in CiviCRM are projects… smaller, one time efforts that achieve a specific result under the context of a larger ongoing effort. They are normally managed by one or two individuals who, generally speaking, not only do the work, but engage with the community to ensure that their efforts meet standards and have the broadest impact.

Most projects adhere to group practices to the extent possible. For example, new developments should follow CiviCRM’s development standards, and new events should adhere to the guidelines set by the events group. Project leaders should coordinate with group leaders as needed.

There is no shortage of things to do in CiviCRM. In fact, there are probably too many to list. Nevertheless, we're curated a list of popular ways to help CiviCRM below, most of which are focused on three broad categories: 1) improving the codebase 2) improving the documentation and 3) growing the ecosystem. After all, we would love to see an even better product with more comprehensive documentation, all sustained by a growing ecosystem!

  • Review the PR Queue
  • Translate CiviCRM
  • Host a local event or meetup
  • Revise CiviCRM documentation
  • Curate case studies
  • Grow CiviCRM on social media
  • Provide extension testing and review
  • Release testing
  • Provide community support

Get Engaged

  1. Register with CiviCRM
  2. Jump community chat
  3. Reach out to an ambassador

Language Ambasssadors

By now, you know what we're all about, how we operate, and what opportunities exist to improve CiviCRM. And, it's likely that you have your own thoughts on just how to do so. Now it's time to take the plunge!

CiviCRM utilizes several platforms to facilitate engagement including community chat, gitlab, email, phone and events. In our view, the best place to start is community chat (we use Mattermost and you'll hear it referred to it as such).

If you've not yet done so, register with CiviCRM and then, using the same credentials, head over to CiviCRM's community chat.

Look for an ambassador

The following are a list of individuals who have volunteered to help you out as you get engaged with CiviCRM.

General Inquiries
https://chat.civicrm.org/civicrm/channels/town-square
@junglebird @ehommel @neil @petednz-fuzion @guyiac @jamienovick @robbrandt
Development
https://chat.civicrm.org/civicrm/channels/dev
@totten @coleman
Product Maintenance
https://chat.civicrm.org/civicrm/channels/product-maintenance
@eileen
Translation
https://chat.civicrm.org/civicrm/channels/translation
@bgm
Documentation
https://chat.civicrm.org/civicrm/channels/documentation
@mikeymjco @ehommel
Marketing
https://chat.civicrm.org/civicrm/channels/marketing
@ehommel @nicol
Infrastructure
https://chat.civicrm.org/civicrm/channels/infrastructure
@bgm
Events
https://chat.civicrm.org/civicrm/channels/events
@daniella @clarkac
Extensions
https://chat.civicrm.org/civicrm/channels/extensions
@twomice @clarkac @ehommel @junglebird
Security
Private chat channel
@seamuslee @totten

Want to join the list of CiviCRM Ambassadors? Send @josh a private message on community chat!