Skip to content
This repository was archived by the owner on Mar 9, 2021. It is now read-only.

Commit 88335b6

Browse files
Zubair Ahmedvinaypuppal
Zubair Ahmed
authored andcommitted
Update CONTRIBUTING.md (#105)
* little bit on nvm * added nvm instructions, new issues docs * completed contributing * error added and indent spaces * index fix * branching system added * sectios rearranged * start removed * removed extra section of branching model * fix of #105 (review)
1 parent cdb54fe commit 88335b6

File tree

1 file changed

+153
-18
lines changed

1 file changed

+153
-18
lines changed

Diff for: CONTRIBUTING.md

+153-18
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,164 @@
1-
# Contribution guidlines
1+
# How to Contribute
22

3-
We welcome pull requests from hackerspace members (our students) and seasoned JavaScript developers alike! Follow these steps to contribute:
3+
Coderplex web application comprises of two repositories :
44

5-
1. Find an issue that needs assistance by searching for the [Help Wanted](https://github.com/coderplex/coderplex/labels/help-wanted) tag.
5+
- [Coderplex](https://github.com/coderplex/coderplex) : Frontend of the application
66

7-
1. Let us know you are working on it by posting a comment on the issue.
7+
- [Coderplex-Backend](https://github.com/coderplex/coderplex-backend) : Backend of the application
88

9-
1. Follow the [Contribution Guidelines](#contribution-guidelines) to start working on the issue.
9+
Both of them are under very active development. This document provides non exhaustive guidelines for contributing to this repository.
1010

11-
Remember to feel free to ask for help in our [Discord](https://discordapp.com/invite/dVnQ2Gf) rooms.
11+
## Code of Conduct
12+
Coderplex has adopted [Contributor Covenant](https://github.com/coderplex/coderplex/blob/docs-update/CODE_OF_CONDUCT.md) that we expect project participants to adhere to.
1213

13-
Working on your first Pull Request? You can learn how from this *free* series [How to Contribute to an Open Source Project on GitHub](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github)
14+
## Open Development
15+
All work related to the application takes place on Github itself. We use [Issues](https://github.com/coderplex/coderplex/issues) to track bugs, discuss ideas and to engage open source contributors. [Projects](https://github.com/coderplex/coderplex/projects) are used to keep track of everything and is our project management tool. We maintain [Wiki](https://github.com/coderplex/coderplex/wiki) for structuring our long term thoughts. Both core team members and contributors sends a pull request which goes through the same review process. Whole process is as transparent as it can be and we strive to keep it that way.
1416

15-
## Running this project locally
17+
## Branching Model
18+
The `master` branch of coderplex is relatively stable branch which we update for every release. We also have auto deployment in place for that particular branch i.e any changes in that branch gets reflected in [https://coderplex.org](https://coderplex.org).
19+
It is highly recommended for both maintainers and contributors to raise a pull request to `develop` branch. Before every release we throughly test develop branch and merge into master.
20+
![Imgur](https://i.imgur.com/KPO2dLul.png)
21+
<br/>
22+
*A pull request to any other branch may most likely be closed by our bots.*
1623

17-
1. Make sure you have [NodeJS](https://nodejs.org/) and [Yarn](https://yarnpkg.com/en/docs/install) installed.
18-
> Make sure you install node version 8 or above and check node version by running `node -v`
19-
1. Then clone this repo
24+
## Development Workflow
25+
26+
We welcome pull requests from beginners and seasoned javaScript developers alike!
27+
28+
### Work on Issues
29+
1. Find an issue that needs assistance by searching for the [open issues](https://github.com/coderplex/coderplex/labels/help-wanted).
30+
2. If you decide to fix an issue, please be sure to check the comment thread in case somebody is already working on a fix. If nobody is working on it at the moment, please leave a comment stating that you intend to work on it so other people don’t accidentally duplicate your effort.
31+
3. If somebody claims an issue but doesn’t follow up for more than a weeks, it’s fine to take over it but you should still leave a comment.
32+
33+
34+
### Proposing a Change
35+
1. Open a new issue if you would like report a bug or suggest improvements.
36+
2. Please wait for core team members to comment on the thread. This lets us reach an agreement on your proposal before you put significant effort into it.
37+
38+
### Prerequisites
39+
1. [NodeJS](https://nodejs.org/)
40+
<br/>
41+
Minimum version v8.0.0+
42+
```bash
43+
To check node version
44+
$ node -v
45+
```
46+
Any lower version than mentioned above may results in this [error](https://github.com/coderplex/coderplex/issues/100).
47+
> If you face problem updating your node then you might need a Node version manager tool. [Follow here]()
48+
49+
2. [Yarn](https://yarnpkg.com)
50+
<br/>
51+
Minimum version v1.2.0+
52+
<br/>
53+
Installing instructions are at [official docs](https://yarnpkg.com/en/docs/install#windows-tab).
54+
Use yarn over npm
55+
> Our team's official policy (for now) is: We only use [Yarn](https://yarnpkg.com/en/docs/install) as our official Node package manager, and so we request you to use Yarn instead of npm and commit `yarn.lock` file.
56+
57+
3. [Git](https://git-scm.com/download/linux)
58+
<br/>
59+
Familiarity with git is mandatory.
60+
61+
### Sending a Pull Request
62+
63+
*Working on your first Pull Request? You can learn how from this *free* series [How to Contribute to an Open Source Project on GitHub](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github)*
64+
65+
#### Running Locally
66+
67+
1. Clone repository
68+
```bash
69+
$ git clone https://github.com/coderplex/coderplex.git
70+
```
71+
2. Move to the repository root folder
72+
```bash
73+
$ cd coderplex
74+
```
75+
3. Install dependencies
76+
```bash
77+
$ yarn
78+
```
79+
4. Start the development server
2080
```bash
21-
git clone https://github.com/coderplex/coderplex.git
81+
$ yarn dev
2282
```
23-
1. `cd coderplex`
24-
1. `npm install`
25-
1. `npm run dev` to start local development server
26-
1. App opens at `localhost:3000`
83+
App now opens at `localhost:3000` in your default browser.
84+
> You may get this [error]() if any other app is already running the above port.
85+
86+
#### Before submitting:
87+
1. Fork the [repository](https://github.com/coderplex/coderplex).
88+
2. From your fork, create a [branch](https://help.github.com/articles/creating-and-deleting-branches-within-your-repository/) and name it. eg. `typo-in-readme`
89+
3. If you’ve fixed a bug or added code that should be tested, add tests!
90+
4. Ensure that all test pass
91+
```bash
92+
$ yarn test
93+
```
94+
5. Run code formatters
95+
```bash
96+
$ yarn lint
97+
```
98+
6. Add and commit your code. Please give meaning full commit messages.
99+
7. Pull latest code from [upstream repository's ](https://help.github.com/articles/merging-an-upstream-repository-into-your-fork/)`develop`, if in case anything new were merged while you were working on your fork.
100+
8. Push the code to your fork.
101+
9. Raise the pull request from your created branch to `develop` branch of coderplex. [why develop instead of master branch?]()
102+
10. Take some time to give a brief description of the work you have done.
103+
104+
#### After submitting
105+
1. Wait for all checks to pass in below section.
106+
2. Your changes are deployed with a unique link `https://deploy-preview-xx--coderplex.netlify.com`. <br/>
107+
*`- xx` is your pull request number.*
108+
3. The core team will review your pull request and either merge it, request changes to it, or close it with an explanation.
109+
110+
##### Received a review request
111+
- Work on the requested changes
112+
- Push the changes as you did earlier, the pull request will automatically catch those and update itself.
113+
114+
### How to get in touch
115+
- Coderplex [Discord Channel](https://discord.gg/dVnQ2Gf)
116+
- Tweet core team members :
117+
- Vinay Puppal [@VinayPuppal](https://twitter.com/vinaypuppal)
118+
- Md-ZubairAhmed [@Md_ZubairAhmed](https://twitter.com/Md_ZubairAhmed)
119+
- P Bhanu Teja [@pbteja1998](https://twitter.com/pbteja1998)
120+
121+
## Appendix
122+
##### 1. Node Version Manager
123+
124+
###### [nvm](https://github.com/creationix/nvm) for Linux & OSX
125+
```bash
126+
Installation
127+
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.6/install.sh | bash
128+
129+
Install latest node lts
130+
$ nvm install --lts
131+
132+
Use installed version
133+
$ nvm use --lts
134+
135+
Run the app in the same terminal session
136+
```
137+
*Make sure you have [curl](https://curl.haxx.se/) installed*
138+
139+
###### [nvm-windows](https://github.com/coreybutler/nvm-windows) for Windows
140+
It comes with an [installer](https://github.com/coreybutler/nvm-windows#installation--upgrades).
141+
142+
```bash
143+
Install particular version
144+
$ nvm install 8.9.1
145+
146+
Use installed version
147+
$ nvm use 8.9.1
148+
```
149+
Still facing problem this [article](https://medium.com/appseed-io/how-to-run-multiple-versions-of-node-js-with-nvm-for-windows-ffbe5c7a2b47) from [@skounis ](https://twitter.com/skounis) explain in details.
27150

28-
**Note:**
29-
> So our team's official policy (for now) is: We only use [Yarn](https://yarnpkg.com/en/docs/install) as our official Node package manager, and so we request you to use Yarn instead of npm and commit yarn.lock file.
151+
##### 2. Local host occupied
152+
```bash
153+
Error: listen EADDRINUSE :::3000
154+
at Object._errnoException (util.js:1024:11)
155+
at _exceptionWithHostPort (util.js:1046:20)
156+
at Server.setupListenHandle [as _listen2] (net.js:1351:14)
157+
at listenInCluster (net.js:1392:12)
158+
at Server.listen (net.js:1476:7)
159+
at app.prepare.then (/home/m-zubairahmed/github/official/coderplex-frontend/server.js:26:6)
160+
at <anonymous>
161+
at process._tickCallback (internal/process/next_tick.js:188:7)
162+
error Command failed with exit code 1.
163+
```
164+
If you get this error while running `yarn dev` then probably another app is occupying `localhost:3000`. You may want to close that and run the command again.

0 commit comments

Comments
 (0)