# Contributing to Kryptology Kryptology is Apache 2.0 licensed and accepts contributions via GitHub pull requests. # Ways to contribute to Kryptology - Bugs or issues: Report problems or defects as github issues - Features and enhancements: Provide expanded capabilities or optimizations - Documentation: Improve existing documentation or create new information - Tests for events and results: - Functional - Performance - Usability - Security - Localization - Recovery - Deployability # Code guidelines Use go style comments for all public functions, structs, and constants. Export only what is absolutely necessary. # The Commit Process When contributing code, please follow these guidelines: - Fork the repository and make your changes in a feature branch - Include unit and integration tests for any new features and updates to existing tests - Ensure that the unit and integration tests run successfully. - Check that the lint tests pass ## Important Use `git rebase origin/master` to limit creating merge commits. Kryptology accepts single commits. If you have more than one, they will be squashed when merged. ## Commit Email Address Your commit email address must match your GitHub or GitLab email address. For more information, see https://help.github.com/articles/setting-your-commit-email-address-in-git/. ## Commit messages Each commit message consists of a header, a body, and a footer. The header includes a type, a scope and a subject: ```markdown ():