/ CONTRIBUTING.md
CONTRIBUTING.md
 1  # Contributing Guidelines
 2  
 3  Contributions welcome!
 4  
 5  **Before spending lots of time on something, ask for feedback on your idea first!**
 6  
 7  Please search issues and pull requests before adding something new to avoid duplicating
 8  efforts and conversations.
 9  
10  This project welcomes non-code contributions, too! The following types of contributions
11  are welcome:
12  
13  - **Ideas**: participate in an issue thread or start your own to have your voice heard.
14  - **Writing**: contribute your expertise in an area by helping expand the included docs.
15  - **Copy editing**: fix typos, clarify language, and improve the quality of the docs.
16  - **Formatting**: help keep docs easy to read with consistent formatting.
17  
18  ## Code Style
19  
20  [![JavaScript Style Guide][standard-image]][standard-url]
21  
22  This repository uses [`standard`][standard-url] to maintain code style and consistency,
23  and to avoid style arguments. `npm test` runs `standard` automatically, so you don't have
24  to!
25  
26  [standard-image]: https://cdn.rawgit.com/feross/standard/master/badge.svg
27  [standard-url]: https://standardjs.com
28  
29  ## Project Governance
30  
31  Individuals making significant and valuable contributions are given commit-access to the
32  project to contribute as they see fit. This project is more like an open wiki than a
33  standard guarded open source project.
34  
35  ### Rules
36  
37  There are a few basic ground-rules for contributors:
38  
39  1. **No `--force` pushes** or modifying the Git history in any way.
40  2. **Non-master branches** should be used for ongoing work.
41  3. **Significant modifications** like API changes should be subject to a **pull request**
42     to solicit feedback from other contributors.
43  4. **Pull requests** are *encouraged* for all contributions to solicit feedback, but left to
44     the discretion of the contributor.
45  
46  ### Releases
47  
48  Declaring formal releases remains the prerogative of the project maintainer.
49  
50  ### Changes to this arrangement
51  
52  This is an experiment and feedback is welcome! This document may also be subject to pull-
53  requests or changes by contributors where you believe you have something valuable to add
54  or change.
55  
56  ## Developer's Certificate of Origin 1.1
57  
58  By making a contribution to this project, I certify that:
59  
60  - (a) The contribution was created in whole or in part by me and I have the right to
61    submit it under the open source license indicated in the file; or
62  
63  - (b) The contribution is based upon previous work that, to the best of my knowledge, is
64    covered under an appropriate open source license and I have the right under that license
65    to submit that work with modifications, whether created in whole or in part by me, under
66    the same open source license (unless I am permitted to submit under a different
67    license), as indicated in the file; or
68  
69  - (c) The contribution was provided directly to me by some other person who certified
70    (a), (b) or (c) and I have not modified it.
71  
72  - (d) I understand and agree that this project and the contribution are public and that a
73    record of the contribution (including all personal information I submit with it,
74    including my sign-off) is maintained indefinitely and may be redistributed consistent
75    with this project or the open source license(s) involved.