Skip to content

Commit 012b55f

Browse files
committed
docs: Add contributing and code of conduct
1 parent 762ca3e commit 012b55f

File tree

2 files changed

+170
-0
lines changed

2 files changed

+170
-0
lines changed

CODE_OF_CONDUCT.md

+75
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
In the interest of fostering an open and welcoming environment, we as
6+
contributors and maintainers pledge to making participation in our project and
7+
our community a harassment-free experience for everyone, regardless of age, body
8+
size, disability, ethnicity, gender identity and expression, level of experience,
9+
nationality, personal appearance, race, religion, or sexual identity and
10+
orientation.
11+
12+
## Our Standards
13+
14+
Examples of behavior that contributes to creating a positive environment
15+
include:
16+
17+
- Using welcoming and inclusive language
18+
- Being respectful of differing viewpoints and experiences
19+
- Gracefully accepting constructive criticism
20+
- Focusing on what is best for the community
21+
- Showing empathy towards other community members
22+
23+
Examples of unacceptable behavior by participants include:
24+
25+
- The use of sexualized language or imagery and unwelcome sexual attention or
26+
advances
27+
- Trolling, insulting/derogatory comments, and personal or political attacks
28+
- Public or private harassment
29+
- Publishing others' private information, such as a physical or electronic
30+
address, without explicit permission
31+
- Other conduct which could reasonably be considered inappropriate in a
32+
professional setting
33+
34+
## Our Responsibilities
35+
36+
Project maintainers are responsible for clarifying the standards of acceptable
37+
behavior and are expected to take appropriate and fair corrective action in
38+
response to any instances of unacceptable behavior.
39+
40+
Project maintainers have the right and responsibility to remove, edit, or
41+
reject comments, commits, code, wiki edits, issues, and other contributions
42+
that are not aligned to this Code of Conduct, or to ban temporarily or
43+
permanently any contributor for other behaviors that they deem inappropriate,
44+
threatening, offensive, or harmful.
45+
46+
## Scope
47+
48+
This Code of Conduct applies both within project spaces and in public spaces
49+
when an individual is representing the project or its community. Examples of
50+
representing a project or community include using an official project e-mail
51+
address, posting via an official social media account, or acting as an appointed
52+
representative at an online or offline event. Representation of a project may be
53+
further defined and clarified by project maintainers.
54+
55+
## Enforcement
56+
57+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
58+
reported by contacting our team at **[email protected]**. As an alternative
59+
feel free to reach out to any of us personally. All
60+
complaints will be reviewed and investigated and will result in a response that
61+
is deemed necessary and appropriate to the circumstances. The project team is
62+
obligated to maintain confidentiality with regard to the reporter of an incident.
63+
Further details of specific enforcement policies may be posted separately.
64+
65+
Project maintainers who do not follow or enforce the Code of Conduct in good
66+
faith may face temporary or permanent repercussions as determined by other
67+
members of the project's leadership.
68+
69+
## Attribution
70+
71+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
72+
available at [http://contributor-covenant.org/version/1/4][version]
73+
74+
[homepage]: http://contributor-covenant.org
75+
[version]: http://contributor-covenant.org/version/1/4/

CONTRIBUTING.md

+95
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
# Contributing Guidelines
2+
3+
We are always looking to promote good contributors to be maintainers and provide them a front-row seat to serverless innovation.
4+
5+
If you would like to be a maintainer for the [Serverless Framework](https://github.com/serverless/serverless) or any of our plugins, please get started with making code contributions and engaging with open issues/PRs. Also, please reach out to any of [Serverless organization](https://github.com/serverless) members to express your interest.
6+
7+
We'd love to collaborate closely with amazing developers as we drive the development of this open technology into the future.
8+
9+
Welcome, and thanks in advance for your help!
10+
11+
# How to contribute to `serverless-python-requirements`
12+
13+
## Setup
14+
15+
It is recommended to use Node v14 or v16 for development.
16+
17+
Then, to begin development fork repository and run `npm install` in its root folder.
18+
19+
## Getting started
20+
21+
A good first step is to search for open [issues](https://github.com/serverless/serverless-python-requirements/issues). Issues are labeled, and some good issues to start with are labeled: [good first issue](https://github.com/serverless/serverless-python-requirements/labels/good%20first%20issue) and [help wanted](https://github.com/serverless/serverless-python-requirements/labels/help%20wanted).
22+
23+
## When you propose a new feature or bug fix
24+
25+
Please make sure there is an open issue discussing your contribution before jumping into a Pull Request!
26+
There are just a few situations (listed below) in which it is fine to submit PR without a corresponding issue:
27+
28+
- Documentation update
29+
- Obvious bug fix
30+
- Maintenance improvement
31+
32+
In all other cases please check if there's an open an issue discussing the given proposal, if there is not, create an issue respecting all its template remarks.
33+
34+
In non-trivial cases please propose and let us review an implementation spec (in the corresponding issue) before jumping into implementation.
35+
36+
Do not submit draft PRs. Submit only finalized work which is ready for merge. If you have any doubts related to implementation work please discuss in the corresponding issue.
37+
38+
Once a PR has been reviewed and some changes are suggested, please ensure to **re-request review** after all new changes are pushed. It's the best and quietest way to inform maintainers that your work is ready to be checked again.
39+
40+
## When you want to work on an existing issue
41+
42+
**Note:** Please write a quick comment in the corresponding issue and ask if the feature is still relevant and that you want to jump into the implementation.
43+
44+
Check out our [help wanted](https://github.com/serverless/serverless-python-requirements/labels/help%20wanted) or [good first issue](https://github.com/serverless/serverless-python-requirements/labels/good%20first%20issue) labels to find issues we want to move forward with your help.
45+
46+
We will do our best to respond/review/merge your PR according to priority. We hope that you stay engaged with us during this period to ensure QA. Please note that the PR will be closed if there hasn't been any activity for a long time (~ 30 days) to keep us focused and keep the repo clean.
47+
48+
## Reviewing Pull Requests
49+
50+
Another really useful way to contribute is to review other people's Pull Requests. Having feedback from multiple people is helpful and reduces the overall time to make a final decision about the Pull Request.
51+
52+
## Providing support
53+
54+
The easiest thing you can do to help us move forward and make an impact on our progress is to simply provide support to other people having difficulties with their projects.
55+
56+
You can do that by replying to [issues on GitHub](https://github.com/serverless/serverless-python-requirements/issues), chatting with other community members in [our Community Slack](https://www.serverless.com/slack), or [GitHub Discussions](https://github.com/serverless/serverless-python-requirements/discussions).
57+
58+
---
59+
60+
# Code Style
61+
62+
We aim for a clean, consistent code style. We're using [Prettier](https://prettier.io/) to confirm one code formatting style and [ESlint](https://eslint.org/) helps us to stay away from obvious issues that can be picked via static analysis.
63+
64+
Ideally, you should have Prettier and ESlint integrated into your code editor, which will help you not think about specific rules and be sure you submit the code that follows guidelines.
65+
66+
## Verifying prettier formatting
67+
68+
```
69+
npm run prettier-check
70+
```
71+
72+
## Verifying linting style
73+
74+
```
75+
npm run lint
76+
```
77+
78+
## Other guidelines
79+
80+
- Minimize [lodash](https://lodash.com/) usage - resort to it, only if given part of logic cannot be expressed easily with native language constructs
81+
- When writing asynchronous code, ensure to take advantage of [async functions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/async_function) and native `Promise` API. Do not rely on [Bluebird](http://bluebirdjs.com) even though still large parts of old code rely on it. We're looking forward to drop this dependency in the near future.
82+
83+
# Testing
84+
85+
When proposing a few feature or fixing a bug, it is recommended to also provide sufficient test coverage. All tests live in `./test.js` module.
86+
87+
# Our Code of Conduct
88+
89+
Finally, to make sure you have a pleasant experience while being in our welcoming community, please read our [code of conduct](CODE_OF_CONDUCT.md). It outlines our core values and beliefs and will make working together a happier experience.
90+
91+
Thanks again for being a contributor to the Serverless Community :tada:!
92+
93+
Cheers,
94+
95+
The :zap: [Serverless](http://www.serverless.com) Team

0 commit comments

Comments
 (0)