This documentation contains a set of guidelines to help you during the contribution process. I heartily welcome all the contributions from anyone willing to improve/add new features to this project. Thank you for helping out and remember, no contribution is too small.
Even if this is your first time trying to contribute, this document should help you get going. All the best !
Below you will find the process and workflow used to review and merge your changes.
- The
README.md
file is the best presentation of this project and to accompany that I have a running demo here. - I encourage you to check them out to quickly get an idea of this project.
- Take a look at the Existing Issues or create your own Issues!
- Wait for the Issue to be assigned to you after which you can start working on it.
- Note : Every change in this project should/must have an associated issue. This helps us easily communicate and document changes.
- Fork this Repository. This will create a Local Copy of this Repository on your Github Profile. Keep a reference to the original project in
upstream
remote.
$ git clone https://github.com/<your-username>/fluttermoji
$ cd fluttermoji
$ git remote add upstream https://github.com/psk907/fluttermoji
- If you have already forked the project, update your copy before working.
$ git remote update
$ git checkout <branch-name>
$ git rebase upstream/<branch-name>
Create a new branch. Use its name to identify the issue your addressing.
# It will create a new branch with name branch_name and switch to that branch
$ git checkout -b branch_name
- Work on the issue(s) assigned to you.
- You can use the example app to test out changes in realtime.
# To run the example project
$ cd example
$ flutter run
- IMPORTANT: You need to be in the project root folder (not in
fluttermoji/example/
) for all git commands.
# To go back to the project root from example folder
$ cd ..
or you can just launch a new terminal window in
fluttermoji/
folder
- Add all the files/folders needed.
- After you've made changes or made your contribution to the project add changes to the branch you've just created by:
# To add all new files and changes to branch branch_name
$ git add .
- To commit give a descriptive message for the convenience of reviewer by:
# This message get associated with all files you have changed
$ git commit -m 'message summarizing changes'
- Now you are ready to push your work to the remote repository.
- When your work is ready, complies with the project conventions and is working all fine, upload your changes to your fork:
# To push your work to your remote repository
$ git push -u origin branch_name
-
Go to the forked repository in your browser and click on Compare and pull requests. Then add a title and description to your pull request that explains your contribution.
-
I also encourage you to add any screenshots/examples that explain your changes.
-
Voila! Your Pull Request has been submitted and will be reviewed by the moderators and merged.🥳
You can refer to the following articles on basics of Git and Github and also contact me, the Project Maintainer, in case you are stuck:
- Forking a Repo
- Cloning a Repo
- How to create a Pull Request
- Getting started with Git and GitHub
- Learn GitHub from Scratch
It always takes time to understand and learn. So, do not worry at all. We know you have got this!💪