|
| 1 | +# Contributing to `code-input` |
| 2 | + |
| 3 | +🎉**Here at `code-input`, contributions of all sizes are more than welcome. Below are some scenarios where you could contribute and how to do so.** Contributions are generally accepted when they help achieve at least one of the aims below, but others will be considered: |
| 4 | + |
| 5 | +* The `code-input` element should act like a normal HTML `textarea` in all browsers, working with all of the normal attributes, events and other types of behaviour. |
| 6 | +* The `code-input` element should be easy to use with all popular syntax-highlighting libraries. |
| 7 | +* Any modifications of `code-input` that would be useful for the open-source community but are not core to this functionality should be available as optional plugins in the `plugins` folder. Here's where most feature contributions will go. |
| 8 | + |
| 9 | +--- |
| 10 | +# Ways you could contribute: |
| 11 | +## 1. I've found a bug but don't know how / don't have time to fix it. |
| 12 | +If you think you've found a bug, please [submit an issue](https://github.com/WebCoder49/code-input/issues) with screenshots, how you found the bug, and copies of the console's logs if an error is in them. Please also mention the template and plugins you used (your `codeInput.registerTemplate(...)` snippet). We'd be more than happy to help you fix it. |
| 13 | + |
| 14 | +## 2. I have implemented a feature / have thought of a potential feature for the library and think it could be useful for others. |
| 15 | +The best way to implement a feature is as a plugin like those in the `plugins` folder of `code-input`. If you do this, you could contribute it as in point 3 below. |
| 16 | +Otherwise, if you do not have the time needed / do not want to implement it, any potential plugins would be [welcome as an Issue](https://github.com/WebCoder49/code-input/issues) which specifies the uses and desired characteristics. |
| 17 | + |
| 18 | +## 3. I want to contribute code that I need / have seen in the Issues. |
| 19 | +Firstly, thank you for doing this! This is probably the most time consuming way of contributing but is also the most rewarding for both you and me as a maintainer. |
| 20 | + |
| 21 | +Please first open an issue if one doesn't already exist, and assign yourself to it. Then, [make a fork of the repo and submit a pull request](https://docs.github.com/en/get-started/quickstart/contributing-to-projects). |
| 22 | + |
| 23 | +If an issue is open but already assigned to someone, it is probably already being worked on - you could still suggest a method of fixing it in the comments but shouldn't open a pull request as it would waste your time. |
0 commit comments