Contributing File
Contributing
Hey all ๐
Welcome to project ovuli. I will try to make this guide as simple as possible and will cover all aspect of this projects and way in which you guys can contribute.
How to work on an issue
- Go in to the issues section and find the issue you are interested in.
- Comment on the issue that you are interested.
- The Mentor will assign you the issue.
๐ Make sure that you are assigned task before working on it.
How to submit work
1. You have to fork the repo
You can get your own fork/copy of ovuli by using the Fork button.
2. Then clone it locally
You need to clone (download) it to local machine using
$ git clone https://github.com/Your_Username/ovuli.git
This makes a local copy of repository in your machine.
Once you have cloned the ovuli
repository in Github, move to that folder first using change directory command on linux and Mac.
# This will change directory to a folder ovuli
$ cd ovuli
Move to this folder for all other commands.
To install dependencies
yarn install
to run locally
expo start
3. Next create new branch in your repo
Whenever you are going to make contribution. Please create seperate branch using command and keep your master
branch clean (i.e. synced with remote branch).
# It will create a new branch with name Branch_Name and will switch to that branch
$ git checkout -b Branch_Name
4. Start working on the issue
To add the changes to the branch. Use
# To add all files to branch Branch_Name
$ git add .
To commit type in a message relevant for the code reveiwer using
# This message get associated with all files you have changed
$ git commit -m 'relevant message'
5. Send the pull request
Now, Push your awesome work to your remote repository using
# To push your work to your remote repository
$ git push -u origin Branch_Name
Finally, go to your repository in browser and click on compare and pull requests
.
Then add a title and description to your pull request that explains your precious effort.
๐ If you want to know the commands to do it see this: Pull Request Gist
Ways to contribute
I know not everyone has their grasp on React Native yet but there are multiple ways to contribute in this project.
- Design: If you feel like that your Design sense is awesome. This section is for you, we are using figma to create deisgn. All the wireframes will be uploaded in
wireframes
folder. - Documentation / Wiki: Documentation is very important aspect of any open source project and it is for this project as well. You might learn a lot while writing about it.
- Language Translation: We are not using google translator to be precise. Also the language conversion will be only for UI elements. Feel free to add your own language. We will be storing this info in
languageBase
folder. - Report Issues: I consider this as one of the most important tasks. Follow the steps mention is upcomming section.
- Code: Last but not least you can code the feature or fix a bug to make it flawless. There are two ways you can do that
- HTML & CSS: We are using Atomic Design System so you can even just design and button by changing it's color and still have a big impact of the over all platform.
- React Native: You can go into the screens and start writing react code to complete feature or fix the bug.
๐ Whatever you choose first contact me @sarthology.
Type | Points |
---|---|
Design | 4 |
Documentation / Wiki | 2 |
Language Translation | 2 |
Report Issues | 2-4 |
Code | 4-10 |
How to report an issue
We will be using Github issues, Great Bug Reports tend to have:
- A quick summary and/or background
- Steps to reproduce
- What you expected would happen
- What actually happens
- Screenshots / Gifs / Videos
- Notes
People love thorough bug reports. I'm not even kidding.
License
By contributing, you agree that your contributions will be licensed under its MIT License.
In the end, most important of all
Be Nice to everyone
Now Let's kill it