Skip to content

Commit e9c5020

Browse files
distributedlockAaron Suarez
authored andcommitted
docs: add CONTRIBUTING with Docker help (#218)
* docs: add CONTRIBUTING with Docker help resolves #201 * Update CONTRIBUTING.md * Update CONTRIBUTING.md
1 parent bf17ba3 commit e9c5020

File tree

1 file changed

+99
-29
lines changed

1 file changed

+99
-29
lines changed

CONTRIBUTING.md

Lines changed: 99 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,32 @@
11
# Contribution Guide
22

3-
Firstly, thank you for considering making a contribution to our project! It's people like you that make Operation Code such a great community.
4-
5-
We're an open source project and we love receiving contributions from our community - you! There are many ways to contribute to our projects, from writing tutorials or blog posts, improving documentation, submitting bug reports or feature requests, or writing code which can be merged into any of our repositories.
6-
7-
The team at Operation Code urges all contributors to join our Slack team. Participating in discussions with the community on our Slack channel, is the best way to run new ideas by the team, and is the best place to get help. You can get an invitation to our Slack channel by [requesting to join Operation Code](https://operationcode.org/join). Once in our Slack team, simply type: '/open #oc-python-projects' and then click enter. Feel free to ask for help; everyone is a beginner at first :smile_cat:!
8-
9-
**This guide assumes that you have some at least some familiarity with submitting a pull request on Github. If you don't, that's ok too though. Simply start by reading Github's own user documentation on how to fork a repository, and make your own edits. That documentation is [here](https://help.github.com/articles/about-pull-requests/) and [here](https://help.github.com/articles/creating-a-pull-request/). 3rd party tutorials on Git/Github can be found [here](https://medium.freecodecamp.org/what-is-git-and-how-to-use-it-c341b049ae61) and [here](https://medium.freecodecamp.org/how-to-use-git-efficiently-54320a236369?source=linkShare-e41cd5edcdac-1535829065)**
10-
3+
Firstly, thank you for considering making a contribution to our project! It's
4+
people like you that make Operation Code such a great community.
5+
6+
We're an open source project and we love receiving contributions from our
7+
community - you! There are many ways to contribute to our projects, from writing
8+
tutorials or blog posts, improving documentation, submitting bug reports or
9+
feature requests, or writing code which can be merged into any of our
10+
repositories.
11+
12+
The team at Operation Code urges all contributors to join our Slack team.
13+
Participating in discussions with the community on our Slack channel is the
14+
best way to run new ideas by the team, and is the best place to get help. You
15+
can get an invitation to our Slack channel by
16+
[requesting to join Operation Code](https://operationcode.org/join). Once in our
17+
Slack team, simply type: '/open #oc-python-projects' and then click enter. Feel
18+
free to ask for help; everyone is a beginner at first :smile_cat:!
19+
20+
**This guide assumes that you have some at least some familiarity with
21+
submitting a pull request on Github. If you don't, that's ok too. Simply
22+
start by reading Github's own user documentation on how to fork a repository,
23+
and make your own edits. That documentation is
24+
[here](https://help.github.com/articles/about-pull-requests/) and
25+
[here](https://help.github.com/articles/creating-a-pull-request/). 3rd party
26+
tutorials on Git/Github can be found
27+
[here](https://medium.freecodecamp.org/what-is-git-and-how-to-use-it-c341b049ae61)
28+
and
29+
[here](https://medium.freecodecamp.org/how-to-use-git-efficiently-54320a236369?source=linkShare-e41cd5edcdac-1535829065)**.
1130

1231
## Development Workflow
1332

@@ -17,10 +36,51 @@ The primary technologies used in this project are:
1736

1837
- [Python](https://www.python.org)
1938
- [Flask](http://flask.pocoo.org)
20-
- [Postgres](https://www.postgresql.org)
21-
22-
To work on the codebase for this project, you will need to have those dependencies installed.
23-
39+
- [Docker](https://www.docker.com/get-started)
40+
- [Docker Compose](https://docs.docker.com/compose/gettingstarted/)
41+
42+
To work on the codebase for this project, you will need to have those
43+
dependencies installed.
44+
45+
#### Dependency Installation
46+
47+
1. **Docker**
48+
1. **Windows**: Docker on _Windows_ can be installed via
49+
[Docker Desktop](https://www.docker.com/products/docker-desktop).
50+
2. **Mac OS**: Docker on _Mac OS_ can be installed via
51+
[Docker Desktop](https://www.docker.com/products/docker-desktop) or via
52+
[Homebrew](https://brew.sh/) by doing (`brew install docker`).
53+
3. **Linux**: Depending on your Linux distribution (`cat /etc/os-release`),
54+
you can use your package manager on board typically to install Docker. Ex.
55+
`apt-get install docker` (if Ubuntu/Debian).
56+
2. **Docker Compose**
57+
1. **Windows**: If installed via _Docker Desktop_, it will include
58+
_docker-compose_. Try to run _docker-compose version_ on commandline.
59+
2. **Mac OS**: Similar to above, if installed via _Docker Desktop_, it will
60+
include _docker-compose_. If using Homebrew please do
61+
`brew install docker-compose`.
62+
3. **Linux**: Please follow instructions at the _Linux_ tab
63+
[here](https://docs.docker.com/compose/install/). Linux has shell
64+
autocompletions available which are very helpful.
65+
66+
#### Dependency Resources
67+
68+
##### Cheatsheets
69+
70+
Cheatsheets are a nice way to get an high at-a-glance view of the
71+
technology/tool. It's a very nice way to ramp up quickly with specific tooling.
72+
73+
- Python
74+
- [Learn X in Y Minutes](https://learnxinyminutes.com/docs/python3/)
75+
- [Devhints](https://devhints.io/python)
76+
- Flask
77+
- [Pretty Printed](https://s3.us-east-2.amazonaws.com/prettyprinted/flask_cheatsheet.pdf)
78+
- [Flask Cheat Sheet](http://flask-cheat-sheet.herokuapp.com/)
79+
- Docker
80+
- [Devhints](https://devhints.io/docker)
81+
- [Official Docker cheatsheet here](https://www.docker.com/sites/default/files/Docker_CheatSheet_08.09.2016_0.pdf)
82+
- Docker Compose
83+
- [Devhints](https://devhints.io/docker-compose)
2484

2585
### Finding An Issue
2686

@@ -37,31 +97,41 @@ To work on the codebase for this project, you will need to have those dependenci
3797
<details>
3898
<summary>Click to Expand</summary>
3999

40-
* After forking this repository to your own github account, and cloning it to your dev environment, you can now create a new branch on your machine. It's wise to name this branch, after the issue you are trying to fix, or the feature you are trying to add.
100+
- After forking this repository to your own github account, and cloning it to
101+
your dev environment, you can now create a new branch on your machine. It's
102+
wise to name this branch after the issue you are trying to fix or the
103+
feature you are trying to add.
41104

42-
```bash
43-
git checkout -b creatingContributionGuide
44-
```
105+
```bash
106+
git checkout -b creatingContributionGuide
107+
```
45108

46-
* In the example above, I have created a new branch, named "creatingContributionGuide". This command also "checks out" the branch, meaning git now knows that is the branch you are working on. You can check what branch you are working on by using the `branch` command.
109+
- In the example above, I have created a new branch, named
110+
"creatingContributionGuide". This command also "checks out" the branch,
111+
meaning git now knows that is the branch you are working on. You can check
112+
what branch you are working on by using the `branch` command.
47113

48-
```bash
49-
git branch
50-
```
51-
* Following my example, `git branch`, would output "creatingContributionGuide" in my terminal.
114+
```bash
115+
git branch
116+
```
52117

53-
* Once you have finished working on your issue, push your changes to your own github repo, and then submit a pull request.
118+
- Following my example, `git branch`, would output "creatingContributionGuide"
119+
in my terminal.
54120

55-
* To return to your main `master` branch, type the following command in your terminal.
121+
- Once you have finished working on your issue, push your changes to your own
122+
github repo, and then submit a pull request.
56123

57-
```bash
58-
git checkout master
59-
```
60-
</details>
124+
- To return to your main `master` branch, type the following command in your
125+
terminal.
126+
127+
```bash
128+
git checkout master
129+
```
130+
131+
</details>
61132

62133
Before committing, please lint your code:
63134

64135
```sh
65-
pip install --upgrade flake8
66-
flake8 app
136+
make lint
67137
```

0 commit comments

Comments
 (0)