Contributions

Community Contributions to CARTO

Get Started

Community Contributions

We are so glad you are interested in contributing to CARTO! We'd like to make contributing as easy as possible. That said, there are a few guidelines.

At CARTO, we manage a lot of open source projects, and we are required to have agreements with everyone who contributes. This is the easiest way for you to give us permission to use your contributions. When you sign a Contributor License Agreement (CLA), you’re giving us a license, but you still own the copyright — so you retain the right to modify your code and use it in other projects.

We require that you (or the organization you're working for) complete and sign a Contributor License Agreement unless you are contributing an Obvious Fix.

Become a Contributor

Email us at cla-support@carto.com to request a Contributor License Agreement. Include your full name and provide us a bit of detail about why you are contributing. Are you working on a personal project? Are you working on behalf of an employer or client? This detail will help us ensure we handle everything properly.

Make a Contribution

Once you've signed the CLA:

  • Review the contributing.md page in the GitHub repository for the project.
  • Here is the list of open source projects CARTO manages.
  • Create a GitHub pull request, following the contributing.md guidelines for the project.
  • Do a code review with the CARTO team and/or core committers on the pull request.

We regularly review contributions and will get back to you if we have any suggestions or concerns.

See below for more information about CLAs, licenses, and the Obvious Fix rule.

About CLAs

A contributor licensing agreement (CLA) must be filled out by every contributor to a CARTO-managed open source project.

The CLA makes everyone’s rights clear:

  • You (or your company) grant copyright license for your contributions to CARTO.
  • You (or your company) grant patent license for your contributions to CARTO.
  • The contribution is entirely voluntary.
  • The work is your original creation.
  • You (or your company) are not required to provide support for your contributions.
  • You (or your company) should read and understand the entire CLA before signing it. Our description of it is not legally binding.

The CLA is beneficial to our contributors and users because:

  • It ensures that we will always be able to release our projects, free from any individual contributor revoking our rights to distribute their contribution.
  • If you fork a CARTO project, or utilize it in a commercial product, you know that you are clear of patent and copyright issues.
  • It makes the documentation we require of our contributors clear and simple.
  • The most important thing about the CLA is that it doesn’t give CARTO any special rights — it just makes things more explicit.

The "Obvious Fix" Rule

CARTO's contribution policy is aimed at encouraging broad participation from our community and minimizing risks to CARTO and our community due to inappropriate contributions of the intellectual property of others.

As a general standard, CARTO requires every contributor to fill out a Contributor License Agreement (“CLA”), either individually or on behalf of a corporate entity.

HOWEVER, very small contributions (such as fixing spelling errors), where the content change is small enough to not be considered intellectual property, can be submitted by a contributor as a patch, without a CLA. If you submit an Obvious Fix without first signing a contributor license agreement, then you are agreeing that your submission is not independently copyrightable. The purpose of this exception is to lower the barrier for new contributors to make contributions while retaining the integrity of the project and our community.

How does the Obvious Fix Rule Work?

Any committer may commit fixes without first signing a CLA for obvious typos, grammar mistakes, and formatting problems wherever they may be.

Whenever you invoke the Obvious Fix Rule, please say so in your commit message. For example:

commit 375t3248vkdd912b0cf9c1d1e99b13
Author: javier <javi@carto.com>
Date: Tue Jul 24 12:15:03 2013 -0500
Fix typo in install file docs.
Obvious fix.

What qualifies as an Obvious Fix?

An obvious fix is a pull request that does not contain creative work. We rely on your judgment to determine what is “obvious”; if you’re not sure, just ask by sending an email to: contact@carto.com.

As a rule of thumb, changes are obvious fixes if they do not introduce any new functionality or creative thinking. As long as the change does not affect functionality, some likely examples include the following:

  • Spelling/grammar fixes;
  • Correcting typos;
  • Cleaning up comments in the code;
  • Changes to white space or formatting;
  • Bug fixes that change default return values or error codes stored in constants, literals, or simple variable types;
  • Adding logging messages or debugging output;
  • Changes to ‘metadata’ files like Gemfile, rebar.config, Makefile, app.config, sys.config, .gitignore, example configuration files, build scripts, etc.;
  • Changes that reflect outside facts, like renaming a build directory or changing a constant;
  • Changes in build or installation scripts;
  • Re-ordering of objects or subroutines within a source file (such as alphabetizing routines);
  • Moving source files from one directory or package to another, with no changes in code;
  • Breaking a source file into multiple source files, or consolidating multiple source files into one source file, with no change in code behavior;
  • Changes to words or phrases isolated from their context;
  • Changes to typeface.

Things that would still require signing a CLA before submitting would likely include stuff like the following:

  • Any of the above actions that result in a change in functionality;
  • A new feature;
  • A translation;
  • Extensive or creative comments.

Contact us

Please fill out the below form and we'll be in touch real soon.