Thank you for your interest in Keploy and for taking the time to contribute to this project. 🙌 Keploy is a project by developers for developers and there are a lot of ways you can contribute.
If you don't know where to start contributing, ask us on our Slack channel.
Contributors are expected to adhere to the Code of Conduct.
Contributors should have knowledge of git, go, and markdown for most projects since the project work heavily depends on them. We encourage Contributors to set up Keploy for local development and play around with the code and tests to get more comfortable with the project.
Sections
To contribute to this project, you must agree to the Developer Certificate of Origin (DCO) for each commit you make. The DCO is a simple statement that you, as a contributor, have the legal right to make the contribution.
See the DCO file for the full text of what you must agree to and how it works here. To signify that you agree to the DCO for contributions, you simply add a line to each of your git commit messages:
Signed-off-by: Jane Smith <[email protected]>
In most cases, you can add this signoff to your commit automatically with the
-s
or --signoff
flag to git commit
. You must use your real name and a reachable email
address (sorry, no pseudonyms or anonymous contributions). An example of signing off on a commit:
$ commit -s -m “my commit message w/signoff”
To ensure all your commits are signed, you may choose to add this alias to your global .gitconfig
:
~/.gitconfig
[alias]
amend = commit -s --amend
cm = commit -s -m
commit = commit -s
We encourage contributions from the community.
Create a GitHub issue for any changes beyond typos and small fixes.
We review GitHub issues and PRs on a regular schedule.
To ensure that each change is relevant and properly peer reviewed, please adhere to best practices for open-source contributions. This means that if you are outside the Keploy organization, you must fork the repository and create PRs from branches on your own fork. The README in GitHub's first-contributions repo provides an example.
- Fork the repository
- Clone the repository with the following command. Replace the <GITHUB_USERNAME> with your username
git clone https://github.com/<GITHUB_USERNAME>/keploy.git
- Go into the directory containing the project and edit the changes.
When we merge your PR, a new build automatically occurs and your changes publish to https://keploy.io.
Keploy is written in Go
(Golang) and leverages Go Modules. Relevant coding style guidelines are the Go Code Review Comments and the Formatting and style section of Peter Bourgon's Go: Best
Practices for Production Environments.
There are many ways in which you can contribute to Keploy.
Report all issues through GitHub Issues using the Report a Bug template. To help resolve your issue as quickly as possible, read the template and provide all the requested information.
We welcome all feature requests, whether it's to add new functionality to an existing extension or to offer an idea for a brand new extension. File your feature request through GitHub Issues using the Feature Request template.
We welcome contributions that help make keploy bug free & improve the experience of our users. You can also find issues tagged Good First Issues.
The Keploy documentation site uses Docusaurus 2, which is a static website generator, you can make changes locally without previewing them in the browser.
In the process of shipping features quickly, we may forget to keep our docs up to date. You can help by suggesting improvements to our documentation using the Documentation Improvement template.
Please refer to Keploy Docs Contributing Guide for setting up your development environment and the follow Keploy Style Guide.
Feel free to join slack to start a conversation with us.