From 3d0b97e8feec98bd5f222e325f1c8717ac308832 Mon Sep 17 00:00:00 2001 From: Tyler Mauthe Date: Mon, 26 Sep 2016 09:03:03 -0700 Subject: [PATCH] Update CONTRIBUTING.md --- CONTRIBUTING.md | 63 +++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 58 insertions(+), 5 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 33d27a6..d6deb4c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,14 +1,67 @@ +# Welcome! +Thank you for your interest in Dashing! This exceptionally handsome +framework welcomes all input, but being stylish requires certain +protocols be followed. :bowtie: + +Below you will find a set of guidelines that will ensure the best outcome +for you _and_ Dashing. + -## Have an Issue? +## Have an Issue +If you run into problems with Dashing, please take these steps before +submitting an issue: -1. Check the [Troubleshooting Guide](https://github.com/Dashing-io/dashing/wiki#how-tos) in the wiki. +1. Check the [Troubleshooting Guide](https://github.com/Shopify/dashing/wiki#how-tos) in the wiki. 2. Use the [GitHub Issue Search](https://help.github.com/articles/searching-issues/) to check if the issue has already been reported. -3. You can ask your issue on the tracker, but your best bet is to go to [Stack Overflow](http://stackoverflow.com/questions/tagged/dashing) +3. Submit your issue to our Issue Tracker. Please provide as much helpful information as possible, preferably making use of a [reduced test case](https://www.google.ca/search?#q=reduced%20test%20case). +**Support requests should be directed to [Stack Overflow](http://stackoverflow.com/questions/tagged/dashing).** +## Feature Requests +Feature requests are welcome, but take a moment to consider whether your idea +fits with the scope and aim of the project. A good rule of thumb is to apply +the 80/20 rule: every feature should be useful to at least 80% of users. Adding +in every possible edge case will only make it more difficult to understand, maintain, +and hack on. -If you feel that you have a really amazing, super neato idea that should be a part of Dashing, it may be a good candidate for an external Gem which supercharges a project. An excellent example of this is +If you feel that you have a really amazing, super neato idea that doesn't +quite fit with the core use of Dashing, it may be a good candidate for an +external Gem which supercharges a project. An excellent example of this is [dashing-contrib](https://github.com/QubitProducts/dashing-contrib). If you -do create a third-party extension for Dashing, please add it [here](https://github.com/Dashing-io/dashing/wiki/Additional-Widgets#other-third-party-tools). +do create a third-party extension for Dashing, please add it [here](https://github.com/Shopify/dashing/wiki/Additional-Widgets#other-third-party-tools). + + +## Pull Requests + +Patches, improvements and new features are a fantastic +help -- thank you! + +**Please ask first** before embarking on any significant pull request (e.g. +implementing features, refactoring code, porting to a different language), +otherwise you risk spending a lot of time working on something that may +not be merged into the project. + +Please adhere to the coding conventions used throughout a project (indentation, +accurate comments, etc.) and any other requirements (such as test coverage). +All code submitted via Pull Request will be dicussed and critiqued in a +respectful manner. + +GitHub has [excellent documentation on how to use Pull Requests.](https://help.github.com/articles/using-pull-requests/) + +## Git Commit Message Suggestions +* Consider starting the commit message with an applicable emoji: + * :art: `:art:` when improving the format/structure of the code + * :moyai: `:moyai:` when adding a new feature + * :wrench: `:wrench:` when dealing with the toolchain (Git, Travis, etc) + * :notebook: `:notebook` when dealing with docs + * :racehorse: `:racehorse:` when improving performance + * :penguin: `:penguin:` when fixing something on Linux + * :apple: `:apple:` when fixing something on Mac OS + * :bug: `:bug:` when fixing a bug + * :bomb: `:bomb:` when removing code or files + * :white_check_mark: `:white_check_mark:` when adding tests + * :lock: `:lock:` when dealing with security + * :arrow_up: `:arrow_up:` when upgrading dependencies + * :arrow_down: `:arrow_down:` when downgrading dependencies