1 | # Contributing
|
2 |
|
3 | ## How can I contribute?
|
4 | - Fix a bug you found or already reported on the [GitHub Issues Tracker](https://github.com/techlab/jquery-smarttab/issues/).
|
5 | - Add new features to the project.
|
6 | - Create new themes
|
7 | - Add new test cases.
|
8 | - Add documentation.
|
9 | - Add a demo page.
|
10 | - [Donate](https://www.paypal.me/dipuraj) money for the project on [![Paypal](https://img.shields.io/badge/PayPal-dipuraj-blue.svg)](https://www.paypal.me/dipuraj)
|
11 |
|
12 | ## How to contribute code?
|
13 | Here are the basic steps to get started contributing code:
|
14 |
|
15 | 1. Fork the [repo](https://github.com/techlab/jquery-smarttab/) and get development running on your computer.
|
16 | 2. Install gulp and karma `npm install gulp-cli karma-cli -g`
|
17 | 3. Install the npm development dependencies by the command `npm install` on the project folder (Should have NodeJS installed).
|
18 | 4. Replicate the issue you're trying to fix or spec out the feature you're trying to add.
|
19 | 5. Run `gulp watch` before start changing code. It will auto build and bundle the `.js` and `.css` files when you change.
|
20 | 6. Change the code to fix the bug or add the feature. All changes should happen in the relevant `src/js/*.js` and `src/css/*.css` files.
|
21 | 7. Build the code by running `npm run build` or `gulp build`.
|
22 | 8. Run the test cases by running `npm test` or `gulp test`, you can also add more test cases based on your new change.
|
23 | 9. Verify that your fix or feature works.
|
24 | 10. Commit your changes with an informative description.
|
25 | 11. Open a pull request to the [dev](https://github.com/techlab/jquery-smarttab/tree/dev) branch of the [repo](https://github.com/techlab/jquery-smarttab/) with your new commit and a descriptive message about what the PR does.
|
26 |
|
27 | Thank you for your contribution!
|
28 |
|
29 | ##### Notes for pull request
|
30 | - Follow the same code style as the library.
|
31 | - Run the test suites in the `test` directory first by running `npm test` or `gulp test`.
|
32 | - Don't modify any files in the `dist` directory.
|
33 | - Don't alter the licence headers.
|
34 |
|
35 | ## Reporting bugs
|
36 | #### Make sure it is a bug related to this project
|
37 | Before reporting the bug, please make sure that the bug is in the project and not from your own code or any other library used.
|
38 |
|
39 | #### Try the latest version
|
40 | Bugs in the older versions of the project may have already been fixed.
|
41 | In order to avoid reporting known issues, make sure you are always testing against the latest release.
|
42 | Also make sure the problem hasn't already been reported on the [GitHub Issues Tracker](https://github.com/techlab/jquery-smarttab/issues/).
|
43 | If not, create a new issue there and include your test case.
|
44 |
|
45 | ## Contributors
|
46 | Million thanks to all our [Code Contributors](https://github.com/techlab/jquery-smarttab/graphs/contributors) and Supporters.
|