Skip to content
This repository has been archived by the owner on Dec 8, 2022. It is now read-only.

Commit

Permalink
Add Sky prefix requirement (#1204)
Browse files Browse the repository at this point in the history
* Add Sky prefix requirement

* Add info about uppercase vs. lowercase.
  • Loading branch information
blackbaud-johnly authored Oct 13, 2017
1 parent 532a20a commit fdbfcef
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ Before you can contribute to SKY UX 2, you must install the following prerequisi

Before you begin to contribute to SKY UX 2, please consider these general guidelines so that your contributions can be reviewed and accepted in a timely fashion. Failure to follow these guidelines will result in your contribution not being accepted until they are addressed.

- Use the `Sky` prefix when naming all classes, directives, services, components, etc. This makes it clear at first-glance to other contributors that the items are owned by SKY UX and not a third-party library. It also prevents potential class-name clashes with other libraries. Keep in mind that while we generally use the uppercase `Sky` prefix, we also use the `sky-` prefix in some cases, such as the selector property in components.
- All new code must have 100 percent unit test code coverage. This doesn't guarantee that every use case is accounted for, but anything less than 100 percent code coverage does guarantee that at least one use case is not accounted for. This can be verified by running tests with `npm run watch` and viewing the code coverage results in `coverage/Chrome xx.x.xxxx/index.html`.
- New components or visual changes to existing components must be accompanied by visual regression tests. This ensures that future changes to CSS or markup will not cause components to render in an unexpected manner. Visual tests consist of three parts: an HTML template for the component to test, a TypeScript file for the component to test, and the actual file that runs the test using webdriver.io and our custom screenshot functions. You can see examples of each part of the visual test process at https://github.com/blackbaud/skyux2/blob/master/src/modules/alert/fixtures/alert.component.visual-fixture.html, https://github.com/blackbaud/skyux2/blob/master/src/modules/alert/fixtures/alert.component.visual-fixture.ts, and https://github.com/blackbaud/skyux2/blob/master/src/modules/alert/alert.component.visual-spec.js.
- Documentation and a working demo must be included. While grammatical errors and other inconsistencies will not necessarily cause your contribution to be rejected (we can clean it up for you), your documentation should be extensive enough to explain the features of your component. The demo should also include most or all of the features available to the component.
Expand Down

0 comments on commit fdbfcef

Please sign in to comment.