Contributing to Atrium
Thank you very much that you take your time to contribute to Atrium
Following a few guidelines so that others can quickly benefit from your contribution.
Code of Conduct
How to Contribute
Star Atrium if you like it.
Found a bug?
Open an issue.
Missing a feature?
Create a feature request.
You would like to write an assertion function but have trouble to start?
Please read the section Your First Code Contribution. If you still have trouble to start, then contact me on slack and I will try to give you some additional hints.
You would like to add a new feature to Atrium?
Contact me on slack so that we can discuss it before you start.
Found spelling mistakes?
😎Please create a pull request.
You wrote an assertion function and would like to contribute it to Atrium?
👍please review the pull request checklist and create a pull request
You have other ideas how Atrium could be improved?
Contact me on slack, I am looking forward to your ideas.
In any case, if you are uncertain how you can contribute, then contact me on
and we will figure it out together
Your First Code Contribution
Fantastic, thanks for your effort! Contact me on
or post into the
whenever you need help to get up and running.
You can also create a pull request and prepend the title with
and explain your problem in the description.
Following a small guidance how I would start.
- Fork the repository to your repositories.
- Use an IDE which supports Kotlin and gradle projects (I am currently using IntelliJ Community Edition).
- Import the projects.
- Read up the Coding Conventions of Atrium (there are only 5 points).
- Get to know how Spek works or look at the existing specifications in atrium-spec.
- Write a test-case for an existing class. This way you get familiar with the classes of Atrium, you use Atrium and learn how Spek works.
- Read the Pull Request Checklist and create your first pull-request.
👏you have submitted your first code contribution to Atrium 😊
I would suggest you wait for my feedback so that you get a first impression of what I consider to be important.
Yet, if your fingers almost automatically start to write more code then go on
So far I do not try to enforce too much. I will review your patches and comment if necessary. However, here a few hints in order that your pull request is merged quickly.
- Make sure the compiler does not generate warnings.
- Try to write code in a similar style as the existing (I suggest you copy something existing and modify it).
- Write readable code and express comments with code rather than comments.
- Provide tests in form of Spek specifications.
- Write your commit message in an imperative style.
Pull Request Checklist
Please make sure you can check every item on the following list before you create a pull request:
- your pull request is rebased on the latest commit on master
- your pull request should ideally consists of one small commit. If not then make sure:
- it cannot be split up in several pull requests.
- your commits are meaningful to others - e.g. do not include temporary commits like
before lunch; Squash commits where appropriate.
Once you have created and submitted your pull request, then make sure:
- your pull request passes travis and all other checks
(if not, then improve your pull request and
git push -f)