Giter Site home page Giter Site logo

contributing-template's Introduction

Contributing Guides: A Template

A template for writing your own contributing guide. Contributing guides are helpful documents that communicate how people can contribute to your open source project.

This template is meant to be a checklist to make sure you haven’t missed anything, rather than offering guidance on philosophy or approach. Your final guidelines may differ depending on your project and needs.

I made this template to share what I learned after reviewing 40 open source projects of all sizes and their contributing guides (or lack thereof). Thanks to all the examples used in this template:

Active Admin, Read The Docs, Mustache.js, Hoodie, Elasticsearch, Devise, Geocoder, Flask, Cucumber-ruby, Cookiecutter, Celery, Atom, Django, React, Require.js, Node.js, Ember.js, Chef, Puppet, Travis CI, Express, Meteor, Angular, StandardIssueLabels

Special thanks also to @mikeal and his post "Healthy Open Source" about Node.js's contribution policies for inspiring this project.

How to get started

To use this template, create CONTRIBUTING.md in the top level of your project, copy the template, and fill it out with your information.

When you’re done, make sure people see your shiny new contributing guide:

  • Link back to your contributing guide in your Readme. Create a section called “Contributing” and link to CONTRIBUTING.md: “Thanks for your interest in contributing! There are many ways to contribute to this project. Get started here (link).”
  • If you have a website for your project, add a section called “Contributing” and link to your contributing guide. Or copy-paste your guide into the website and link to them in your CONTRIBUTING.md file.

Finally, a couple of tips to help you write:

  • A friendly, welcoming voice will go a long way in making people feel excited to contribute to your project. Don’t forget to explain terms or concepts that might be confusing to a newcomer.
  • Use this as an opportunity to lay the ground rules that will make you happy. The purpose of writing a guide is to make your life easier. It’s okay to say “XYZ pull requests are not accepted” or “I am busy, expect 1-2 weeks to review and merge your PR”. Clarifying your needs up front will make it much faster to review future contributions.
  • Be concise. Adding too much detail might actually make people less likely to read your guide, which will defeat the purpose.

That’s it!

Contributing to this template

This template reflects what I learned from reviewing the policies of many open source projects, not my experience as an open source maintainer. If you think something important is missing or should be different based on your experience, I'd love to hear it! (Keep in mind this is meant to be a first pass checklist, not a full-fledged guide in itself.) If you have suggestions for improving this template, open an issue on this project.

Translations

Spanish(español)

License & Attribution

This template is available under the Creative Commons CC0 1.0 License, meaning you are free to use it for any purpose, commercial or non-commercial, without any attribution back to me (public domain). If you use it in your project, I'd love to hear about it! (Find me here: @nayafia) But you are in no way required to do so.

contributing-template's People

Contributors

abbycabs avatar codemicro avatar jwflory avatar mattmahn avatar nanego avatar nayafia avatar valerybriz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

contributing-template's Issues

Add beginner material

Hi there! This looks great! I thought it may be handy to recommend people reference the material as mentioned on makeapullrequest.com:

**Working on your first Pull Request?** You can learn how from this *free* series [How to Contribute to an Open Source Project on GitHub](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github)

I wasn't sure where the best place for this would be. Maybe in Your First Contribution or Getting started.

Full disclosure, that series of lessons is from me and even though it's free I make money when people watch it. But my motive is to help lower the barrier of entry to Open Source (as I believe is your motivation as well).

Add copyright/attribution section

Unfortunately I don't know much about this or what standard practices are but it's probably good to tell potential contributors how they'll be credited, if at all. Will they be given credit in the README file? What portion of their work will fall under their copyright? If it's for a business or organization are the contributors handing over their copyright to the organization?

Wikipedia has an article on contributor license agreements. For reference, here are some CLAs of note:

Googling around produces an article by Bradley Kuhn called "Why Your Project Doesn't Need a Contributor Licensing Agreement" so I guess there's some controversy about whether a CLA is even needed or is overkill.

Here's a link dump of potentially useful links:

I feel like I barely understand the issue. Maybe it would be good enough to have something like the agreement that StackOverflow has in place for it's Subscriber Content? I don't know how this translates to source code, though.

Consider discussing CLAs

You might want to discuss contributor license agreements. Contributors might want to be clear on what they are giving and getting when they contribute.

contributing template in spanish

This template helped a lot the organization I work with and also my own side open source projects I think It might help a lot of people that doesn't speak english and also maintains foss projects.

I would like to completely translate this guide so you can have it able also in spanish.

What you think? Can I help with that?

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.