
How to Contribute Code to ROOT
==============================

Thank you for your interest in contributing to ROOT!  We strongly welcome and appreciate such contributions!

This short guide aims to provide hints and pointers to making the process as quick and painless as possible.

ROOT Source Code
----------------

The source code for ROOT is kept in [GitHub](http://github.com/root-project/root) and follows the pull-request model;
the primary branch for development is `master`.
Visit [this page](https://root.cern.ch/integrating-github-pull-request-root-repository) for more details on how to
create pull requests.

Once a PR is created, a member of the ROOT team will review it as quickly as possible.  If you are familiar with the
ROOT community, it may be beneficial to add a suggested reviewer to the PR in order to get quicker attention.

The ROOT codebase roughly follows the [Taligent naming conventions](https://root.cern.ch/coding-conventions).  Please
mind the coding conventions, as this is a simple item for reviewers to otherwise get stuck on.

Testing
-------

While there are several levels of automated tests that will be triggered before a PR is integrated into `master`, we
strongly encourage new developers to run the tests _before_ submitting new code.  [Please follow the testing docs](https://root.cern.ch/run-tests)
for more information.


Add a simple contributing file.
Add a simple contributing file.

Mostly, this is a set of links to other, existing documentation.  However,
the GitHub web UI will recommend developers review this file before
submitting a pull-request.  It's a simple nudge to "do the right thing".
