# Contributing to Open Source Titanium Modules
This guide describes how to contribute to Titanium open source modules.
# Signing the Contributors License Agreement (CLA)
Since Appcelerator itself is both an open source project and also a Company that is in charge of its long-term development, we require that you sign a standard Open Source Contributors License Agreement (CLA). As with most open source projects, legal issues regarding intellectual property rights require us to protect ourselves, our contributors and our users from any future ownership claims from third-parties.
Thus, you must first electronically sign the CLA (opens new window) before you can contribute code, documentation or any other materials to the project.
# Create a Ticket
If you are having an issue with an open source module, please please create a ticket in that module's repository issue tracker (https://github.com/tidev/PROJECT/issues). Even if you are going to fix the issue yourself and submit a pull request, it is important to have a ticket so we can track the issue. When creating a ticket, be sure to add sample code and instructions that can be used to reproduce the issue.
# Submitting Contributions
The process for contributing to open source modules is the same as contributing code to Titanium SDK, but instead of the titanium_mobile repo you will be working with the titanium_modules (opens new window) repo. Please refer to the Pull Request Guide for guidance.
Versions will follow standard OSGI naming (opens new window) with a numberic "dot" format:
When submitting a fix:
Include the ticket number and module name in each commit message
[MOD-1268] UrbanAirship: open sourcing
Increment the version of the module.
Add an entry to the changelog and include the ticket number.
Add the appropriate attributions to "ATTRIBUTIONS.md" for any third party code or libraries used.
Include the new built zip of the module in the pull request.
Add a comment to the associated ticket with the pull request URL.