Giter Club home page Giter Club logo

contributors's Introduction

Moya Contributors Guidelines v1.1.0

Background

Moya started out as a project in Artsy under the ownership of Ash Furrow and Orta Therox. Over time, developers from the community began using Moya and it is now a community-driven project.

After watching The Social Coding Contract we opted to find ways to make the project more welcoming to external contributors.

This document tries to clarify how we can include as many people as possible within the project.

How to get push access?

If you get a merged PR, regardless of content (typos, code, doc fixes) then you're eligible for push access to the Moya organization. We check for this on PR merges and extend an invite via GitHub.

Offhand, it's easy to imagine that this would make code quality suffer, but in reality it offers fresh perspectives to the codebase and encourages ownership from people who are depending on the project.

Everyone comes in with their own perspective on what a project could/should look like, and encouraging discussion can help expose good ideas sooner.

When should you use push access?

It can be overwhelming to suddenly be offered the chance to wipe the source code for a project. Don't worry, we don't let you push to master.

All code is peer-reviewed, and we have the convention that someone other than the submitter should merge the pull request.

As an org contributor you can merge other people's pull requests, or other contributors can merge yours. You won't be assigned a pull request, but you're welcome to just jump in and take a code review on things that interest you.

If it feels right, merge. Moya is not continuously deployed, there is space for debate after too. Offering the chance to revert, or make an amending pull request.

It's convention to provide a call to action via /cc @Moya/contributors to invite discussion.

How can we help you get comfortable contributing?

It's normal for a first PR to be a potential fix for a problem, moving on from there to helping the project's direction can be difficult. We try to help contributors cross that barrier by offering good first step issues. These issues can be done without feeling like you're stepping on toes. Ideally, these are non-critical issues that are well defined.

We keep all project discussion inside GitHub issues. If you have questions about how to use the library, or how the project is running GitHub issues are the goto tool.

We have our own [Code of Conduct](Code of Conduct.md), which is adapted from the Contributor Covenant, version 1.3.0, available at http://contributor-covenant.org/version/1/3/0/. The CoC is taken seriously by the project owners.

Our expectations on you as a contributor

To quote @alloy from this issue:

Don't ever feel bad for not contributing to open source.

We want contributors to both provide ideas, keep the ship shipping and to take some of the load from others. It is non-obligatory; we're here to have fun. ๐Ÿ†

If someone submits a pull request that's not perfect, it's better to think about the PR's motivation rather than the specific implementation. Having braces on the wrong line should not be a blocker for example. Though we do want to keep test coverage high, we will work with you to figure that out together.

What about if you have problems that cannot be put into a public issue?

Both Ash Furrow and Orta Therox have contactable emails on their GitHub profiles, and are happy to talk about any problems.

contributors's People

Contributors

orta avatar ashfurrow avatar esttorhe avatar

Watchers

James Cloos avatar Zhenwei Guan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.