Skip to content

Commit d713a6f

Browse files
authored
adds contributing guide (#17)
1 parent d223fe3 commit d713a6f

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

CONTRIBUTING.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
2+
# Contributing to Craftgate PHP Client
3+
As an open-source project, anyone can contribute to the development of `craftgate-php-client`. If you decide to do so, please be aware of the guidelines outlined below.
4+
5+
`craftgate-php-client` is written in PHP, in order to contribute to the project, some familiarity with PHP knowledge is required.
6+
7+
## Prerequisites
8+
This project uses [phpunit](https://phpunit.de/) as its test runner. Required minimum php version is 5.3 and current build tool is composer.
9+
10+
## Package Structure
11+
The project has a straightforward package structure; the source files are located under the [src/](src), sample integrations are located under [samples](samples), and tests are located under [unit-tests](unit-tests).
12+
13+
As outlined in the [README](./README.md), the bulk of the project is split into the following categories:
14+
15+
- Adapters: Located under the [src/Adapter](src/Adapter) package, these are classes that are responsible for managing a certain domain
16+
- Enumerations and Domain Objects: Located under [src/Model](src/Model), these are enumerations, constants and domain object models that can be used by request and response.
17+
- Util Classes: Located under [src/Util](src/Util), these are utility classes to be used in core module.
18+
19+
## Tests and Coverage
20+
As a payment systems client, it's important to have tests covering critical parts. In addition to tests that test crucial parts of the libraries and utilities, all samples are provided as php runnable.
21+
It is strongly advised for all contributors to run all samples against the changes introduced in the pull request. If there are no corresponding tests against the changes introduced, owner of the pull request is responsible for adding any relevant tests or samples.

0 commit comments

Comments
 (0)