Skip to content

Latest commit

 

History

History
110 lines (79 loc) · 5.56 KB

CONTRIBUTING.md

File metadata and controls

110 lines (79 loc) · 5.56 KB

Introduction

Thank you!

Thank you for considering contributing to NameChangr. It's because of your help that we can support more state and document types for everyone!

Following these guidelines helps to communicate that you respect the time of the developers managing and developing this open source project. In return, they should reciprocate that respect in addressing your issue, assessing changes, and helping you finalize your pull requests.

Where we need help

There are many ways to contribute, but the most pertinent may be additional state support.

You can help by:

  • Creating document package templates [possibly non-technical]
  • Creating State specific forms to gather data used in user interfaces [html, css knowledge]
  • Implementing back-end controller code for your state [technical]

On top of this, any additional bug fixes, feature requests, or any ideas you might have are always welcome! Just create a pull request or an issue.

Please, don't use the issue tracker for questions related to your specific case. Consider asking around locally or finding an attorney for these kinds of problems.

Ground Rules

Responsibilities

  • Ensure cross-platform compatibility for every change that's accepted. Windows, Mac, Debian & Ubuntu Linux.
  • Ensure that code that goes into core meets all requirements in this checklist (i mean, roughly): https://gist.github.com/audreyr/4feef90445b9680475f2
  • Create issues for any major changes and enhancements that you wish to make. Discuss things transparently and get community feedback.
  • Keep feature versions as small as possible, preferably one new feature per version.
  • Be welcoming to newcomers and encourage diverse new contributors from all backgrounds. See the Code of Conduct.

Your First Contribution

Unsure where to begin contributing to NameChangr? You can start by looking through the beginner and help-wanted issues in the issue tracker: *Beginner issues - issues which should only require a few lines of code, and a test or two. *Help wanted issues - issues which should be a bit more involved than beginner issues

Working on your first Pull Request? You can learn how from this free series, How to Contribute to an Open Source Project on GitHub. Also consider http://www.firsttimersonly.com for a text based tutorial.

At this point, you're ready to make your changes! Feel free to ask for help; everyone is a beginner at first 😸

Getting started

  1. Create your own fork of the code
  2. Do the changes in your fork
  3. If you like the change and think the project could use it:
    • Be sure you have followed the code style for the project.
    • Create tests for new or modified functionality
    • Note the Code of Conduct
    • Send a pull request
    • Obvious fixes may be accepted without any discussion, but larger changes may be discussed and changes requested of you.

As a rule of thumb, changes are obvious fixes if they do not introduce any new functionality or creative thinking. As long as the change does not affect functionality, some likely examples include the following:

  • Spelling / grammar fixes
  • Typo correction, white space and formatting changes
  • Comment clean up
  • Bug fixes that change default return values or error codes stored in constants
  • Adding logging messages or debugging output
  • Changes to ‘metadata’ files like Gemfile, .gitignore, build scripts, etc.
  • Moving source files from one directory or package to another

Pull requests with improved testing are greatly appreciated!

How to report a bug

If you find a security vulnerability, do NOT open an issue. Email [email protected] instead.

Any security issues should be submitted directly to [email protected] In order to determine whether you are dealing with a security issue, ask yourself these two questions:

  • Can I access something that's not mine, or something I shouldn't have access to?
  • Can I disable something for other people?

If the answer to either of those two questions are "yes", then you're probably dealing with a security issue. Note that even if you answer "no" to both questions, you may still be dealing with a security issue, so if you're unsure, just email me at [email protected].

Bug Reports

When filing an issue, make sure to answer these five questions as relevant:

  1. What version of PHP are you using?
  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?

How to suggest a feature or enhancement

The goal of NameChangr is to help trans and gender-nonconforming people generate their legal name and/or gender change paperwork quickly, easily, and for free. In addition to generating the paperwork, we provide them a better idea of what to expect with a walk-through of the process.

If you find yourself wishing for a feature that doesn't exist in NameChangr, you are probably not alone. There are bound to be others out there with similar needs. Open an issue on our issues list on GitHub which describes the feature you would like to see, why you need it, and how it should work.

Code review process

I try to look at Pull Requests on a regular basis. If they are well tested, work, look nice, and merge easily, they will probably be released right away!

Community

NameChangr is an ambitious project and I am starting it by myself. If you would like to become a contributor and assist with operation of the site, please contact me at [email protected].