Contribute

Some ways in which you can contribute are: reporting errors, improving documentation, adding examples, adding support for more services, fixing bugs, suggesting new features, adding test cases, translating messages, and whatever else you can think of that may be helpful. If in doubt, just ask.

The project structure

Silhouette is divided into the api and impl packages. The definition of these both packages is as follows:

API Package

The collection of traits and utility classes that form the stable API of Silhouette.

Impl Package

The reference implementation of Silhouette.

Test Package

Contains helper classes and objects to easily test an application based on Silhouette.

Development workflow

Development is coordinated via GitHub. Ideas for improvements are discussed using the chat or the forum.

To submit issues, please use the GitHub issue tracker. Please do not use the issue tracker for questions!

Scala source code should follow the conventions documented in the Scala Style Guide. Additionally, acronyms should be capitalized. To have your code automatically reformatted, run this command before committing your changes:

Important

After submitting your pull request, please watch the result of the automated Travis CI build and correct any reported errors or inconsistencies.

Help to improve the documentation

Every software project is only as good as its documentation. So we do our best to cover all the code with a well-structured, meaningful and up-to-date documentation. But like similar to most open source projects, time is a precious commodity. We appreciate all help to improve the documentation by suggesting edits here on Readme.io.

License and Copyright

By submitting work via pull requests, issues, documentation, or any other means, contributors indicate their agreement to publish their work under this project’s license and also attest that they are the authors of the work and grant a copyright license to the Mohiva Organisation, unless the contribution clearly states a different copyright notice (e.g., it contains original work by a third party).