|
| 1 | +Thanks for contributing! |
| 2 | + |
| 3 | +## Development |
| 4 | + |
| 5 | +### Installing dependencies |
| 6 | + |
| 7 | +```bash |
| 8 | +yarn install |
| 9 | +``` |
| 10 | + |
| 11 | +You will find all building blocks that make up Spectacle in the [`src`](src) folder. |
| 12 | + |
| 13 | +### Testing |
| 14 | + |
| 15 | +You will find tests for files colocated with `*.test.js` suffixes. Whenever making any changes, ensure that all existing tests pass by running `yarn run test`. |
| 16 | + |
| 17 | +If you are adding a new feature or some extra functionality, you should also make sure to accompany those changes with appropriate tests. |
| 18 | + |
| 19 | +### Linting |
| 20 | + |
| 21 | +Before commiting any changes, be sure to do `yarn run lint`; this will lint all relevant files using [ESLint](http://eslint.org/) and report on any changes that you need to make. |
| 22 | + |
| 23 | +### Before submitting a PR... |
| 24 | + |
| 25 | +Thanks for taking the time to help us make Spectacle even better! Before you go ahead and submit a PR, make sure that you have done the following: |
| 26 | + |
| 27 | +- Run the tests using `yarn run test`. |
| 28 | +- Run lint and flow using `yarn run lint` |
| 29 | + |
| 30 | +## Releasing a new version to NPM (only for project administrators): |
| 31 | + |
| 32 | +1. Run `npm version patch` (or `minor`, `major` as appropriate) to run tests and lint, build the `lib` ands `dist` directories, , then update `package.json` and add a git tag. |
| 33 | +2. Run `npm publish` and publish to npm if all is well. |
| 34 | +3. Run `git push && git push --tags` |
| 35 | + |
| 36 | +## Contributor Covenant Code of Conduct |
| 37 | + |
| 38 | +### Our Pledge |
| 39 | + |
| 40 | +In the interest of fostering an open and welcoming environment, we as |
| 41 | +contributors and maintainers pledge to making participation in our project and |
| 42 | +our community a harassment-free experience for everyone, regardless of age, body |
| 43 | +size, disability, ethnicity, gender identity and expression, level of experience, |
| 44 | +nationality, personal appearance, race, religion, or sexual identity and |
| 45 | +orientation. |
| 46 | + |
| 47 | +### Our Standards |
| 48 | + |
| 49 | +Examples of behavior that contributes to creating a positive environment |
| 50 | +include: |
| 51 | + |
| 52 | +* Using welcoming and inclusive language |
| 53 | +* Being respectful of differing viewpoints and experiences |
| 54 | +* Gracefully accepting constructive criticism |
| 55 | +* Focusing on what is best for the community |
| 56 | +* Showing empathy towards other community members |
| 57 | + |
| 58 | +Examples of unacceptable behavior by participants include: |
| 59 | + |
| 60 | +* The use of sexualized language or imagery and unwelcome sexual attention or |
| 61 | +advances |
| 62 | +* Trolling, insulting/derogatory comments, and personal or political attacks |
| 63 | +* Public or private harassment |
| 64 | +* Publishing others' private information, such as a physical or electronic |
| 65 | + address, without explicit permission |
| 66 | +* Other conduct which could reasonably be considered inappropriate in a |
| 67 | + professional setting |
| 68 | + |
| 69 | +### Our Responsibilities |
| 70 | + |
| 71 | +Project maintainers are responsible for clarifying the standards of acceptable |
| 72 | +behavior and are expected to take appropriate and fair corrective action in |
| 73 | +response to any instances of unacceptable behavior. |
| 74 | + |
| 75 | +Project maintainers have the right and responsibility to remove, edit, or |
| 76 | +reject comments, commits, code, wiki edits, issues, and other contributions |
| 77 | +that are not aligned to this Code of Conduct, or to ban temporarily or |
| 78 | +permanently any contributor for other behaviors that they deem inappropriate, |
| 79 | +threatening, offensive, or harmful. |
| 80 | + |
| 81 | +### Scope |
| 82 | + |
| 83 | +This Code of Conduct applies both within project spaces and in public spaces |
| 84 | +when an individual is representing the project or its community. Examples of |
| 85 | +representing a project or community include using an official project e-mail |
| 86 | +address, posting via an official social media account, or acting as an appointed |
| 87 | +representative at an online or offline event. Representation of a project may be |
| 88 | +further defined and clarified by project maintainers. |
| 89 | + |
| 90 | +### Enforcement |
| 91 | + |
| 92 | +Instances of abusive, harassing, or otherwise unacceptable behavior may be |
| 93 | +reported by contacting the project team at [email protected]. All |
| 94 | +complaints will be reviewed and investigated and will result in a response that |
| 95 | +is deemed necessary and appropriate to the circumstances. The project team is |
| 96 | +obligated to maintain confidentiality with regard to the reporter of an incident. |
| 97 | +Further details of specific enforcement policies may be posted separately. |
| 98 | + |
| 99 | +Project maintainers who do not follow or enforce the Code of Conduct in good |
| 100 | +faith may face temporary or permanent repercussions as determined by other |
| 101 | +members of the project's leadership. |
| 102 | + |
| 103 | +### Attribution |
| 104 | + |
| 105 | +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, |
| 106 | +available at [http://contributor-covenant.org/version/1/4][version] |
| 107 | + |
| 108 | +[homepage]: http://contributor-covenant.org |
| 109 | +[version]: http://contributor-covenant.org/version/1/4/ |
0 commit comments