Skip to content

Commit e66637a

Browse files
committed
added contribution economics
1 parent 935b913 commit e66637a

File tree

1 file changed

+50
-17
lines changed

1 file changed

+50
-17
lines changed

CONTRIBUTING.md

Lines changed: 50 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,62 @@
1-
# Contributing to Parse Server
1+
# Contributing to Parse Server <!-- omit in toc -->
22

3-
We really want Parse to be yours, to see it grow and thrive in the open source community.
3+
## Table of Contents <!-- omit in toc -->
4+
- [Contributing](#contributing)
5+
- [Why Contributing?](#why-contributing)
6+
- [Environment Setup](#environment-setup)
7+
- [Recommended Tools](#recommended-tools)
8+
- [Setting up your local machine](#setting-up-your-local-machine)
9+
- [Good to Know](#good-to-know)
10+
- [Troubleshooting](#troubleshooting)
11+
- [Please Do's](#please-dos)
12+
- [Test against Postgres](#test-against-postgres)
13+
- [Postgres with Docker](#postgres-with-docker)
14+
- [Feature Considerations](#feature-considerations)
15+
- [Security Checks](#security-checks)
16+
- [Parse Error](#parse-error)
17+
- [Parse Server Configuration](#parse-server-configuration)
18+
- [Code of Conduct](#code-of-conduct)
419

5-
Before you jump into the coding element of contributing, please make sure you first [open an issue](https://github.com/parse-community/parse-server/issues/new/choose) relating to your contribution, or continue the discussion in the existing issue.
20+
## Contributing
621

7-
This helps us all plan out the best conceptual approach for the contribution, so that your time isn't wasted on approaches or features that could be tackled in a different way. Our team are also happy to give you pointers and suggestions to speed up the process.
22+
Before you start to code, please first open a [new issue](https://github.com/parse-community/parse-server/issues/new/choose) related to your contribution, or search for and continue the discussion in an [existing issue](https://github.com/parse-community/parse-server/issues).
823

9-
When opening an issue, please make sure you follow the templates and provide as much detail as possible.
24+
> ⚠️ Please do not post a security vulnerability on GitHub or in the Parse Community Forum. Instead, follow the [Parse Community Security Policy](https://github.com/parse-community/parse-server/security/policy).
1025
11-
After you've completed the contribution, you'll need to submit a Pull Request (PR).
26+
Together we plan out the best conceptual approach for your contribution, so that your and our time is invested in the best possible approach. The discussion often reveals how to leverage existing features of Parse Server to reach your goal with even less effort and in a more sustainable way.
1227

13-
If you are not familiar with Pull Requests and want to know more about them, you can visit the [Creating a pull request](https://help.github.com/articles/creating-a-pull-request/) article. It contains detailed informations about the process.
28+
Please completely fill out any templates to provide essential information about your new feature or the bug you discovered.
1429

15-
If you need any help along the way, you can open a Draft PR where we can help finalize your contribution.
30+
More information about opening a pull request can be found in the [GitHub docs](https://help.github.com/articles/creating-a-pull-request/).
1631

17-
Contributing can be challenging, so don't be discouraged if you're having difficulties. Please don't hesitate to ask for help.
32+
Whether this is your first contribution or you are already an experienced contributor, the Parse Community has your back – don't hesitate to ask for help.
1833

19-
## Setting up the project for debugging and contributing:
34+
## Why Contributing?
2035

21-
### Recommended setup:
36+
Buy cheap, buy twice. What? No, this is not the Economics 101 class, but the same is true for contributing.
37+
38+
There are two ways of writing a feature or fixing a bug. Sometimes the quick solution is to just write a Cloud Code function that does what you want. Contributing by making the change directly in Parse Server may take a bit longer, but it actually saves you much more time in the long run.
39+
40+
Consider the benefits you get:
41+
42+
- 🚀 Higher efficiency: Your code is examined for efficiency and interoperability with existing features by the community.
43+
- 🛡 Stronger security: Your code is scrutinized for bugs and vulnerabilities and automated checks help to identify security issues that may arise in the future.
44+
- 🧬 Continuous improvement: If your feature is used by others it is likely to be continuously improved and extended by the community.
45+
- 💝 Giving back: You give back to the community that contributed to make the Parse Platform become what it is today and for future developers to come.
46+
- 🧑‍🎓 Improving yourself: You learn to better understand the inner workings of Parse Server, which will help you to write more efficient and resilient code for your own application.
47+
48+
Most importantly, with every contribution you improve your skills so that future contributions take even less time and you get all the benefits above for free — easy choice, right?
49+
50+
If this is your first contribution, or you are already a seasoned contributor, the Parse Community has your back when you write it!
51+
52+
## Environment Setup
53+
54+
### Recommended Tools
2255

2356
* [vscode](https://code.visualstudio.com), the popular IDE.
2457
* [Jasmine Test Explorer](https://marketplace.visualstudio.com/items?itemName=hbenl.vscode-jasmine-test-adapter), a very practical test exploration plugin which let you run, debug and see the test results inline.
2558

26-
### Setting up you local machine:
59+
### Setting up your local machine
2760

2861
* [Fork](https://github.com/parse-community/parse-server) this project and clone the fork on your local machine:
2962

@@ -39,13 +72,13 @@ $ npm run watch # run babel watching for local file changes
3972
4073
Once you have babel running in watch mode, you can start making changes to parse-server.
4174

42-
### Good to know:
75+
### Good to Know
4376

44-
* The `lib/` folder is not commited, so never make changes in there.
77+
* The `lib/` folder is not committed, so never make changes in there.
4578
* Always make changes to files in the `src/` folder.
4679
* All the tests should point to sources in the `lib/` folder.
4780

48-
### Troubleshooting:
81+
### Troubleshooting
4982

5083
*Question*: I modify the code in the src folder but it doesn't seem to have any effect.<br/>
5184
*Answer*: Check that `npm run watch` is running
@@ -67,7 +100,7 @@ Once you have babel running in watch mode, you can start making changes to parse
67100
* **Do not** publish the *lib* folder.
68101
* Please consider if any changes to the [docs](http://docs.parseplatform.org) are needed or add additional sections in the case of an enhancement or feature.
69102

70-
### Run your tests against Postgres (optional)
103+
### Test against Postgres
71104

72105
If your pull request introduces a change that may affect the storage or retrieval of objects, you may want to make sure it plays nice with Postgres.
73106

@@ -89,7 +122,7 @@ If your pull request introduces a change that may affect the storage or retrieva
89122
- `it_only_mongodb_version('>=4.4')` // will test with any version of Postgres but only with version >=4.4 of MongoDB; accepts semver notation to specify a version range
90123
- `it_exclude_mongodb_version('<4.4')` // will test with any version of Postgres and MongoDB, excluding version <4.4 of MongoDB; accepts semver notation to specify a version range
91124

92-
#### Run Postgres setup for Parse with Docker
125+
#### Postgres with Docker
93126

94127
[PostGIS images (select one with v2.2 or higher) on docker dashboard](https://hub.docker.com/r/postgis/postgis) is based off of the official [postgres](https://registry.hub.docker.com/_/postgres/) image and will work out-of-the-box (as long as you create a user with the necessary extensions for each of your Parse databases; see below). To launch the compatible Postgres instance, copy and paste the following line into your shell:
95128

0 commit comments

Comments
 (0)