Contributing

The Citrus development team will be glad to receive new ideas and improvements from you - any time. You can access the
Citrus source on GitHub. You can fork the Citrus project on GitHub very easy in
order to provide changes. In case you have coded extensions, bug fixes or simply new features, please send us a pull
request from your repository. If you are not sure how to do it please see our quickstart or refer to the very good
documentation and how-to section on GitHub.

If you still have questions regarding Citrus development please do not hesitate to send us a mail regarding your problems
on citrus-dev mailing list.

New code

In case you coded a new feature or extension we are looking forward to know about it! Send us your changes as pull request
on GitHub including unit tests (we are very serious about testing, of course) and a
description of the feature.

Note: If you want your contributions in the official Citrus code repository you have to agree that your changes are
released under the same license as Citrus uses to that time and that the Citrus team might change the licensing of Citrus
in future.

Bug fixing

Bug fixes are also best sent to us as project fork on GitHub along with a bug report, so we can apply the fix to the code base.
Please tell us the version the patch should be applied to in order to avoid misunderstandings. Bug fix changes must be released
under the same license as Citrus to get involved into the code base.

Feature requests

In case you have new ideas and feature requests for Citrus but you do not want to implement those on your own, we will be happy
to receive your request on the citrus-dev mailing list. You can also simply open a feature request
through the issue tracker on GitHub. We will discuss the benefit of the new feature
with you and help you to get the best out of Citrus for your needs.

Site generation

If you would like to improve the site content you may need to build the html sources locally. The site generation process is
designed to run with Jekyll Docker image. You need to start Docker on your local machine and then call:

This will automatically start the Jekyll Docker container for site generation. As a result you have the generated site html sources
in the local Maven target/site build folder. For local deployment call

mvn docker:start -Psite -N

Wait for the Docker container to start and open your browser pointing to http://localhost:4000. You will be able to see and
navigate through the generated site locally.

A thank you

Thanks! Hacking on Citrus should be fun. If you find any of this hard to figure out, let us know so we can improve our process
or documentation!