Thank you for taking the time to contribute! We appreciate all commits and improvements, feel free to join Knot.x community and contribute.
Please refer to Getting started section in the README file. After setting up Knot.x instance you may check if it works properly entering http://localhost:8092/content/local/simple.html (when running default configuration).
Project License: Apache License Version 2.0
- You will only Submit Contributions where You have authored 100% of the content.
- You will only Submit Contributions to which You have the necessary rights. This means that if You are employed You have received the necessary permissions from Your employer to make the Contributions.
- Whatever content You Contribute will be provided under the Project License(s).
When writing a commit message, please follow the guidelines in How to Write a Git Commit Message.
Please add the following lines to your pull request description:
---
I hereby agree to the terms of the Knot.x Contributor License Agreement.
All Knot.x documentation is in the same repository as codebase in documentation module. This documentation after update is ported to Knot.x wiki. When updating documentation please update proper markdown pages in documentation module following instructions and include it with your pull request. After your pull request is merged, wiki pages will be updated. Please do not update wiki pages directly because your changes will be lost.
Tests written in Knot.x should be named with methodName_whenStateUnderTest_expectBehavior
convention proposed as the first example in 7 Popular Unit Test Naming Conventions.
Unit tests
canServeRequest_whenNoFormIdAndPostAttribute_expectRequestNotServed
Integration tests
In integration tests method name is omitted, and test class name should suggest what part of system we test:
whenRepositoryDidNotReturnTemplateBody_expectNoSnippetsProcessing
Below is short list of things that will help us keep Knot.x quality and accept pull requests:
- Follow Google Style Guide code formatting from Knot.x Github, particularly set your IDE
tab size
/ident
to 2 spaces andcontinuation ident
to 4 spaces. - write tests (integration and Unit Tests) following defined convention,
- write javadoc, especially for interfaces and abstract methods,
- update documentation and include changes in the same pull request which modifies the code,
- when committing an improvement, try to show it in local demo example,
- when logging use proper levels:
INFO
andWARNING
should log only very important messages.