# Contributing to Marvin Marvin is an open source project started by handful of developers at The New York Times and open to the entire Go community. We really appreciate your help! ## Filing issues When filing an issue, make sure to answer these five questions: 1. What version of Go are you using (`go version`)? 2. What operating system and processor architecture are you using? 3. What did you do? 4. What did you expect to see? 5. What did you see instead? General questions should go to the [#marvin](https://gophers.slack.com/messages/marvin/) channel in the [Gopher Slack community](https://blog.gopheracademy.com/gophers-slack-community/) instead of the issue tracker. The gophers there will answer or ask you to file an issue if you've tripped over a bug. ## Contributing code Before submitting changes, please follow these guidelines: 1. Check the open issues and pull requests for existing discussions. 2. Open an issue to discuss a new feature. 3. Write tests. 4. Make sure code follows the ['Go Code Review Comments'](https://github.com/golang/go/wiki/CodeReviewComments). 5. Make sure your changes pass `go test`. 6. Make sure the entire test suite passes locally. 7. Open a Pull Request. 8. [Squash your commits](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html) after receiving feedback and add a [great commit message](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html). Unless otherwise noted, the Marvin source files are distributed under the Apache 2.0-style license found in the LICENSE.md file.