-
Notifications
You must be signed in to change notification settings - Fork 24
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docs(*) contribution, pr, and style guide - INTF-944 (#55)
Add guidelines for creating a new Kongponent from start to finish: * Code style guide * Avoiding dependencies * Documentation for each Kongponent * Test coverage * Git branch name and commit message structure * PR requirements (including a template) * Contact info for questions and submitting tickets
- Loading branch information
Aron Eidelman
authored
Jan 18, 2019
1 parent
e4bc5f8
commit 56c3ad8
Showing
3 changed files
with
156 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
# Contributing to Kongponents 🍌 | ||
|
||
Thank you for your interest in contributing to Kongponents. Please follow the guidelines below to keep our respository's commit history clean and consistent. | ||
|
||
## Branching | ||
|
||
Branch from `master`. Name the new branch with a type followed by a brief title, e.g., `fix/broken-button` or `chore/bump-version`. For a list of types, follow the same conventions used in commit messages below. | ||
|
||
Limit the scope of the branch to one particular outcome. If you encounter other improvements you can make during the course of working on the branch, e.g., if you discover another bug you could fix or a dependency version that needs to be increased, please maintain commit atomicity. | ||
|
||
Rebase regularly to keep the code history flat and readable. To open a PR, even for a branch that is still in progress, see [submitting a PR](README.md#submitting-a-pr). | ||
|
||
## Commit Message Format | ||
|
||
To maintain a healthy Git history, please write your commit messages as follows: | ||
|
||
* Use *present tense* | ||
* Prefix your message with a [type](#type) and a [scope](#scope) | ||
* The header of your message should not exceed 50 characters | ||
* If a [body](#body) is necessary, include a blank line between the header and the body | ||
* The body of your message should not contain lines longer than 72 characters | ||
|
||
Below is a template of what a commit message should look like: | ||
|
||
``` | ||
<type>(<scope>) <subject> | ||
<BLANK LINE> | ||
<body> | ||
<BLANK LINE> | ||
<footer> | ||
``` | ||
|
||
### Type | ||
|
||
The type of your commit indicates what type of change this commit is about. The | ||
accepted types are: | ||
|
||
* *feat*: A new feature | ||
* *fix*: A bug fix | ||
* *tests*: A change that is purely related to the test suite only (fixing a test, adding a test, improving its reliability, etc...) | ||
* *docs*: Changes to the README.md, this file, or other such documents | ||
* *style*: Changes that do not affect the meaning of the code (white-space trimming, formatting, etc...) | ||
* *perf*: A code change that significantly improves performance | ||
* *refactor*: A code change that neither fixes a bug nor adds a feature, and is too big to be considered just perf | ||
* *chore*: Maintenance changes related to code cleaning that isn't considered part of a refactor, build process updates, dependency bumps, or auxiliary tools and libraries updates (e.g. Lerna, Storybook, Styleguide) | ||
|
||
### Scope | ||
|
||
The Kongponent or any other part of the codebase affected by your change. Examples of using type and scope: | ||
|
||
* docs(readme) | ||
* feat(kmodal) | ||
* fix(kbutton) | ||
|
||
### Body | ||
|
||
The body of your commit message should contain a detailed description of your changes if you predict they will not be immediately clear to a reviewer. | ||
|
||
Ideally, if the change is significant, you should explain its motivation, the chosen implementation, and justify it. | ||
|
||
As previously mentioned, lines in the commit messages should not exceed 72 characters. | ||
|
||
### Footer | ||
|
||
The footer is the ideal place to link to related material about the change, e.g. related GitHub issues, Pull Requests, Jira tickets. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
### Summary | ||
|
||
#### Changes made: | ||
* | ||
|
||
### PR Checklist | ||
- [ ] Does not introduce dependencies | ||
- [ ] **Functional:** all changes do not break existing APIs and if so, bump major version. | ||
- [ ] **Tests pass:** check the output of yarn test packages/<Kongponent> | ||
- [ ] **Naming:** the files and the method and prop variables use the same naming conventions as other Kongponents | ||
- [ ] **Framework style:** abides by the essential rules in Vue's style guide | ||
- [ ] **Cleanliness:** does not have formatting issues, unused code (e.g., console.logs), or leftover comments | ||
- [ ] **Docs:** includes a technically accurate README, uses JSDOC where appropriate | ||
- [ ] **Version:** package.json and the release tag both reflect the same, accurate version |