Thanks for choosing to contribute to Apache Sling! The following are a set of guidelines to follow when contributing to this project.
Being an Apache project, Apache Sling adheres to the Apache Software Foundation's Code of Conduct.
Before contributing to the project, please make sure you understand the requirements and implications of contributing to the Apache Software Foundation. An Apache iCLA is welcome if you start contributing regularly, and required if you later become a committer.
Apache Sling is a volunteer effort, so there is always plenty of work that needs to be accomplished. If you want to help supporting Apache Sling, this page is intended as a starting point for specific contribution ideas. To further understand how the Sling community operates, refer to the Community Roles and Processes document and/or join our mailing lists.
See Project Information for details about the tools mentioned below.
The Apache Sling project organizes its "to do" list using the Apache JIRA issue tracking system. No matter if you are a programmer or not, it is probably best to check JIRA first to figure out if the problem you identified is already known. If not, please create a JIRA issue in which you try to describe to the best of your knowledge the bug that you want to fix or the improvement that you would like to contribute. There are many recommendations on the Web on how to write a good bug report, like Haje Jan Kamps' How to write the perfect bug report blog post.
If pull requests are familiar to you, the next step is to open one against one of our modules. More details about how the project is structured in terms of repositories can be read on the Getting and Building Sling page.
For relatively large contributions (e.g. new modules), we recommend one of the following two approaches:
- open a JIRA issue and send a pull request to the Apache Sling Whiteboard project
- open a JIRA issue and attach your source code to it as a zip or tar archive.
For people who are completely new to contributing to an Apache Software Foundation project, the Get Involved page provides you with enough resources to understand how the foundation works and how its projects are structured - and don't hesitate to ask on our mailing lists!