---
title: Adding a Code of Conduct to Open Source Projects
teaser: Foster a welcoming community by adding a Code of Conduct to open source projects.
tags: news,open source
author: Melissa Xie
published_on: 2015-04-15
---

In order to foster a
kind,
inclusive,
cooperative, and
harassment-free
community,
we now have a [Code of Conduct] for
all of thoughtbot's open source projects.

[Code of Conduct]: https://thoughtbot.com/open-source-code-of-conduct

## Inspiration

I was really inspired by a talk that
[Coraline Ada Ehmke] recently gave,
titled "Living our Open Source Values".
In her talk, she mentions that open source is
the foundation of the Internet;
however,
there is still a lack of
diversity in participants.

One of her suggestions to
address this problem was to
include a Code of Conduct in
open source projects.
As a result,
Coraline created the [Contributor Convenant] -
a simple but powerful code that
can be easily added to any repository.
By adding this Code of Conduct,
maintainers and contributors are pledging to
be respectful to and cooperative with each other,
welcoming all people to participate.

## One size fits some

As maintainers of
numerous open source projects,
this is an initiative that
thoughtbot wants to be involved with.

After some exploration,
we decided to adopt a version that is based on
ones that we've seen from
[Bundler] and
[CocoaPods].
These versions extend
beyond just the repository and
into the community around
the project itself, such as
mailing lists and
chatrooms,
which applies to our projects.

It is also important to note that
this Code of Conduct only applies to
the online community around
the open source project.
If there is also
an in-person component,
like events,
there should be
a separate Code of Conduct for that.

[Coraline Ada Ehmke]: http://where.coraline.codes/
[Contributor Convenant]: http://contributor-covenant.org/
[Bundler]: http://bundler.io/conduct.html
[CocoaPods]: https://github.com/CocoaPods/CocoaPods/blob/master/CODE_OF_CONDUCT.md

## Add it, enforce it

Adding a Code of Conduct to a project is
a great step in
cultivating a positive environment
for your contributors, both old and new.

We've done this for our projects by
referencing the Code of Conduct in
each project's contributing guidelines, like in
[capybara-webkit],
[Clearance], and
[Argo].

We encourage you to
find a Code of Conduct that works best for
your project and its community,
and stick by it.

[capybara-webkit]:
https://github.com/thoughtbot/capybara-webkit/blob/master/CONTRIBUTING.md
[Clearance]: https://github.com/thoughtbot/clearance/blob/master/CONTRIBUTING.md
[Argo]: https://github.com/thoughtbot/Argo/blob/master/CONTRIBUTING.md
