Putting up issues first, it is the first stuff possible contributors are going to read. Scrolling is hard.
2.1 KiB
How to contribute
We love you to contribute to this project by filing bugs, helping others on the issue tracker, by contributing features/bug fixes through pull requests or by helping out in our forums.
Creating issues
We use our issue tracker for project communication. When using the issue tracker,
- Be descriptive when creating an issue (what, where, when and how does a problem pop up)?
- Attach steps to reproduce (if applicable)
- Attach code samples, configuration options or stack traces that may indicate a problem
- Be helpful and respect others when commenting
Create a pull request if you would like to have an in-depth discussion about some piece of code.
Setting up the project locally
The project development runs on top of the diagram-js master branch. The following code snippet sets up both libraries linking diagram-js to bpmn-js.
mkdir bpmn.io
cd bpmn.io
git clone git@github.com:bpmn-io/diagram-js.git
(cd diagram-js && npm i)
git clone git@github.com:bpmn-io/bpmn-js.git
(cd bpmn-js && npm install && npm link ../diagram-js)
// Run the test suite
grunt
// Running the test suite with every file change
TEST_BROWSERS=(Chrome|Firefox|IE) grunt auto-test
Creating pull requests
We use pull requests for feature discussion and bug fixes. If you are not yet familiar on how to create a pull request, read this great guide.
Some things that make it easier for us to accept your pull requests
- The code adheres to our conventions
- spaces instead of tabs
- single-quotes
- ...
- The code is tested
- The
grunt
build passes (executes tests + linting) - The work is combined into a single commit
- The commit messages adhere to our guideline
We'd be glad to assist you if you do not get these things right in the first place.