CONTRIBUTING.md 3.26 KB
Newer Older
squidfunk's avatar
squidfunk committed
1 2
# Contributing

3 4
Interested in contributing to the Material theme? Want to report a bug? Before
you do, please read the following guidelines.
squidfunk's avatar
squidfunk committed
5 6 7 8 9 10 11 12 13 14 15 16 17

## Submission context

### Got a question or problem?

For quick questions there's no need to open an issue as you can reach us on
[gitter.im][1].

  [1]: https://gitter.im/mkdocs-material/general

### Found a bug?

If you found a bug in the source code, you can help us by submitting an issue
18 19 20 21 22 23
to the [issue tracker][2] in our GitHub repository. Even better, you can submit
a Pull Request with a fix. However, before doing so, please read the
[submission guidelines][3].

  [2]: https://github.com/squidfunk/mkdocs-material/issues
  [3]: #submission-guidelines
squidfunk's avatar
squidfunk committed
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53

### Missing a feature?

You can request a new feature by submitting an issue to our GitHub Repository.
If you would like to implement a new feature, please submit an issue with a
proposal for your work first, to be sure that it is of use for everyone, as
the Material theme is highly opinionated. Please consider what kind of change
it is:

* For a **Major Feature**, first open an issue and outline your proposal so
  that it can be discussed. This will also allow us to better coordinate our
  efforts, prevent duplication of work, and help you to craft the change so
  that it is successfully accepted into the project.

* **Small Features** and bugs can be crafted and directly submitted as a Pull
  Request. However, there is no guarantee that your feature will make it into
  the master, as it's always a matter of opinion whether if benefits the
  overall functionality of the theme.

## Submission guidelines

### Submitting an issue

Before you submit an issue, please search the issue tracker, maybe an issue for
your problem already exists and the discussion might inform you of workarounds
readily available.

We want to fix all the issues as soon as possible, but before fixing a bug we
need to reproduce and confirm it. In order to reproduce bugs we will
systematically ask you to provide a minimal reproduction scenario using the
54
custom issue template. Please stick to the issue template.
squidfunk's avatar
squidfunk committed
55 56

Unfortunately we are not able to investigate / fix bugs without a minimal
57
reproduction scenario, so if we don't hear back from you we may close the issue.
squidfunk's avatar
squidfunk committed
58 59 60 61

### Submitting a Pull Request (PR)

Search GitHub for an open or closed PR that relates to your submission. You
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
don't want to duplicate effort. If you do not find a related issue or PR,
go ahead.

1. **Development**: Fork the project, set up the [development environment][4],
  make your changes in a separate git branch and add descriptive messages to
  your commits.

2. **Build**: Before submitting a pull requests, build the theme. This is a
  mandatory requirement for your PR to get accepted, as the theme should at
  all times be installable through GitHub.

3. **Pull Request**: After building the theme, commit the compiled output, push
  your branch to GitHub and send a PR to `mkdocs-material:master`. If we
  suggest changes, make the required updates, rebase your branch and push the
  changes to your GitHub repository, which will automatically update your PR.
squidfunk's avatar
squidfunk committed
77

78
After your PR is merged, you can safely delete your branch and pull the changes
squidfunk's avatar
squidfunk committed
79
from the main (upstream) repository.
80

81
  [4]: http://squidfunk.github.io/mkdocs-material/customization/#theme-development