Contributing to Papyrus Components
--------------------

Thanks for your interest in this project.

Project description:
--------------------

A shared developer environment for integrating Components in Papyrus [Eclipse Papyrus project](https://projects.eclipse.org/projects/modeling.mdt.papyrus).

Create a new [bug][ebug]:
-----------------

Be sure to search for existing bugs before you create another one. Remember that contributions are always welcome!

[ebug]: https://bugs.eclipse.org/bugs/enter_bug.cgi?

Search for [bugs][ebug]:
----------------

This project uses Bugzilla to track ongoing development and issues.

[ebug]: https://bugs.eclipse.org/bugs/enter_bug.cgi

Contributor License Agreement:
------------------------------

Before your contribution can be accepted by the project, you need to create and electronically 
sign the Eclipse Foundation Contributor License Agreement [(CLA)](http://www.eclipse.org/legal/CLA.php).

Developer resources:
--------------------

 * Check the README.md file for developing information
 * Continuous integration with [Hudson](https://hudson.eclipse.org/papyrus/)
 * Contribution review with [Gerrit](https://git.eclipse.org/)
