|
| 1 | +# Contributing to InteractiveSideMenu |
| 2 | + |
| 3 | +:+1: First of all, big thanks for your desire to contribute in this project :+1: |
| 4 | + |
| 5 | +## How to contribute |
| 6 | + |
| 7 | +The easiest way to contribute is to *report a bug* or *propose a new feature* using [GitHub Issues](https://github.com/handsomecode/InteractiveSideMenu/issues). |
| 8 | +Also, feel free to send your suggestions concerning any library issues, documentation and README typos, [Sample](./Sample) improvements, or any other enhancements. **We really appreciate your participation!** |
| 9 | + |
| 10 | +### How to ask a question |
| 11 | + |
| 12 | +Before asking a question, please look through the [README](./README.md) and [Sample application](./Sample) or take a look into [already asked GitHub Issues](https://github.com/handsomecode/InteractiveSideMenu/issues) (even closed). If you still haven't found an answer, feel free to [open an issue](https://github.com/handsomecode/InteractiveSideMenu/issues/new) and ask us your question and mark it with the prepared `question` label. |
| 13 | + |
| 14 | +### How to report a bug |
| 15 | + |
| 16 | +The standard way to report a bug is [GitHub Issues](https://github.com/handsomecode/InteractiveSideMenu/issues). |
| 17 | + |
| 18 | +Explain the problem and include additional details to help maintainers reproduce the problem: |
| 19 | + |
| 20 | +- **Use a clear and descriptive title** for the issue to identify the problem. |
| 21 | +- **Describe the exact steps to reproduce the problem** in as many details as possible. |
| 22 | +- **Provide specific examples** to demonstrate these steps. Include links to files or GitHub projects, or copy/paste snippets. If you're providing snippets in the issue, use Markdown code blocks. |
| 23 | +- **Describe the behavior you observed** after following these steps and point out what exactly is the problem with that behavior. |
| 24 | +- **Explain the behavior you expected** to see instead and why. |
| 25 | +- **Include screenshots and animated GIFs** which show you following the described steps and clearly demonstrate the problem. |
| 26 | +- **If you're reporting a library crash**, include a crash report with a stack trace. |
| 27 | + |
| 28 | +Include details about your configuration and environment: |
| 29 | + |
| 30 | +- **Which version of InteractiveSideMenu** are you using? |
| 31 | +- Do you test on the **Simulator** or a **Real device**? |
| 32 | +- **iOS version** that you test with. |
| 33 | +- **Xcode version** if it could be helpful in your case. |
| 34 | + |
| 35 | +### How to request an enhancement |
| 36 | + |
| 37 | +**Enhancements** are features that you might like to suggest to a project, but aren't necessarily bugs/problems with the existing code. There is *a label* for enhancements in [Github's Issues](https://github.com/handsomecode/InteractiveSideMenu/issues), so you can tag issues as `enhancement`, and thereby allow us to prioritize issues/bugs reported to the project. |
| 38 | + |
| 39 | + |
| 40 | +### How to tell us about your application |
| 41 | + |
| 42 | +If you are using **InteractiveSideMenu** in your project that is successfully published to AppStore, [send the link](https://github.com/handsomecode/InteractiveSideMenu/issues/new) to us and we'll add you to the list of applications that use the library. |
| 43 | + |
| 44 | + |
| 45 | +### How to submit changes |
| 46 | + |
| 47 | +When contributing to this repository, please, first discuss the change you wish to make via [issue](https://github.com/handsomecode/InteractiveSideMenu/issues/new). |
| 48 | +The preferred workflow for contributing to InteractiveSideMenu is to fork the [main repository](https://github.com/handsomecode/InteractiveSideMenu) on |
| 49 | +GitHub, clone, and develop on a branch. |
| 50 | + |
| 51 | +**Steps:** |
| 52 | + |
| 53 | +1. Fork the [project repository](https://github.com/handsomecode/InteractiveSideMenu) |
| 54 | + by clicking on the 'Fork' button near the top right of the page. This creates |
| 55 | + a copy of the code under your GitHub user account. For more details on |
| 56 | + how to fork a repository see [this guide](https://help.github.com/articles/fork-a-repo/). |
| 57 | + |
| 58 | +2. Clone your fork of the *InteractiveSideMenu* repo from your GitHub account to your local disk |
| 59 | + |
| 60 | + ```bash |
| 61 | + $ git clone [email protected]:YourLogin/InteractiveSideMenu.git |
| 62 | + $ cd InteractiveSideMenu |
| 63 | + ``` |
| 64 | + |
| 65 | +3. Create a ``feature`` branch to hold your development changes |
| 66 | + |
| 67 | + ```bash |
| 68 | + $ git checkout -b feature/my_updates |
| 69 | + ``` |
| 70 | + |
| 71 | + Always use a ``feature`` branch. It's good practice to never work on the ``master`` branch! |
| 72 | + |
| 73 | +4. Develop the feature on your feature branch. Add changed files using ``git add`` and then ``git commit`` files |
| 74 | + |
| 75 | + ```bash |
| 76 | + $ git add modified_files |
| 77 | + $ git commit |
| 78 | + ``` |
| 79 | + |
| 80 | + to record your changes in Git, then push the changes to your GitHub account with |
| 81 | + |
| 82 | + ```bash |
| 83 | + $ git push -u origin feature/my_updates |
| 84 | + ``` |
| 85 | + |
| 86 | +5. Add your updates to [Sample](./Sample) as well. Also, don't forget to update [README](./README.md) and [CHANGELOG](./CHANGELOG.md) with your changes. |
| 87 | + |
| 88 | +6. Follow [these instructions](https://help.github.com/articles/creating-a-pull-request-from-a-fork) |
| 89 | +to create a pull request from your fork. This will send an email to the committers. |
| 90 | + |
| 91 | +(If any of the above seems like magic to you, please look up the |
| 92 | +[Git documentation](https://git-scm.com/documentation) on the web, or ask a friend or another contributor for help) |
| 93 | + |
| 94 | +## Code of Conduct |
| 95 | + |
| 96 | +This project is governed by the [CODE OF CONDUCT ](./CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please, report unacceptable behavior to [email protected]. |
0 commit comments