# Contributing to ERPNext

### New Features

#### Don't Repeat Yourself (DRY)

We believe that the most effective way to manage a product like this is to ensure that
there is minimum repetition of code. So before contributing a function, please make sure
that such a feature or function does not exist else where. If it does, the try and extend
that function to accommodate your use case.

#### Don't create new DocTypes Unless Absolutely Necessary

DocTypes are easy to create but hard to maintain. If you find that there is a another DocType with a similar functionality, then please try and extend that functionality. For example, by adding a "type" field to classify the new type of record.

#### Tabs or spaces?

Tabs!

### Copyright

Please see README.md