aboutsummaryrefslogtreecommitdiffstats
path: root/CONTRIBUTING.md
diff options
context:
space:
mode:
authorJez Ng2012-12-09 17:28:57 -0800
committerJez Ng2012-12-09 17:28:57 -0800
commitb7ac8b14da25232d2306ffe51e4bf789ff8ea295 (patch)
treea1e9f0b1eaa061774270d996c7c6c56e6a05c775 /CONTRIBUTING.md
parent6fc350ca6192e9c8a05c8e329c8aaebbdeace3d1 (diff)
parent23943ead1a72948c93bb492417a740ab68e8ed50 (diff)
downloadvimium-b7ac8b14da25232d2306ffe51e4bf789ff8ea295.tar.bz2
Merge pull request #743 from christophermanning/add_contributing_guidelines
Add contributing guidelines
Diffstat (limited to 'CONTRIBUTING.md')
-rw-r--r--CONTRIBUTING.md55
1 files changed, 55 insertions, 0 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 00000000..5fb03bfd
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,55 @@
+# Contributing to Vimium
+
+You'd like to fix a bug or implement a feature? Great! Check out the bugs on our issues tracker, or implement
+one of the suggestions there that have been tagged 'todo'. If you have a suggestion of your own, start a
+discussion on the issues tracker or on the [mailing list](http://groups.google.com/group/vimium-dev?hl=en). If
+it mirrors a similar feature in another browser or in Vim itself, let us know! Once you've picked something to
+work on, add a comment to the respective issue so others don't duplicate your effort.
+
+## Reporting Issues
+
+Please include the following when reporting an issue:
+
+ 1. Chrome and OS Version: `chrome://version`
+ 1. Vimium Version: `chrome://extensions`
+
+## Installing From Source
+
+Vimium is written in Coffeescript, which compiles to Javascript. To
+install Vimium from source:
+
+ 1. Install [Coffeescript](http://coffeescript.org/#installation).
+ 1. Run `cake build` from within your vimium directory. Any coffeescript files you change will now be automatically compiled to Javascript.
+ 1. Navigate to `chrome://extensions`
+ 1. Toggle into Developer Mode
+ 1. Click on "Load Unpacked Extension..."
+ 1. Select the Vimium directory.
+
+## Tests
+
+Our tests use [shoulda.js](https://github.com/philc/shoulda.js) and [PhantomJS](http://phantomjs.org/). To run the tests:
+
+ 1. `git submodule update --init --recursive` -- this pulls in shoulda.js.
+ 1. [Install PhantomJS.](http://phantomjs.org/download.html)
+ 1. `cake test` to run the tests.
+
+## Code Coverage
+
+Bugs and features are not the only way to contribute -- more tests are always welcome. You can find out which
+portions of code need them by looking at our coverage reports. To generate these reports:
+
+ 1. Download [JSCoverage](http://siliconforks.com/jscoverage/download.html) or `brew install jscoverage`
+ 1. `npm install temp`
+ 1. `cake coverage` will generate a coverage report in the form of a JSON file (`jscoverage.json`), which can
+ then be viewed using [jscoverage-report](https://github.com/int3/jscoverage-report). See
+ jscoverage-report's [README](https://github.com/int3/jscoverage-report#jscoverage-report) for more details.
+
+## Pull Requests
+
+When you're done with your changes, send us a pull request on Github. Feel free to include a change to the
+CREDITS file with your patch.
+
+## Coding Style
+
+ * Follow the style already present in the file.
+ * Ensure your lines don't exceed 110 characters.