diff options
| author | Mitchell Hashimoto <m@mitchellh.com> | 2024-10-31 10:00:20 -0700 |
|---|---|---|
| committer | Mitchell Hashimoto <m@mitchellh.com> | 2024-10-31 10:03:02 -0700 |
| commit | e7ccc60ed57f9897f390da42f0d7e06f094d46f3 (patch) | |
| tree | 73ab5b057e10a788a43a7d61f50cfeb60b33c2a2 /CONTRIBUTING.md | |
| parent | b56cb7038a1ce15cd74f1bc6e6d05cc7104ce190 (diff) | |
CONTRIBUTING.md
Diffstat (limited to 'CONTRIBUTING.md')
| -rw-r--r-- | CONTRIBUTING.md | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..af3c30be7 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,79 @@ +# Ghostty Development Process + +This document describes the development process for Ghostty. It is intended for +anyone considering opening an **issue** or **pull request**. If in doubt, +please open a [discussion](https://github.com/ghostty-org/ghostty/discussions); +we can always convert that to an issue later. + +> [!NOTE] +> +> I'm sorry for the wall of text. I'm not trying to be difficult and I do +> appreciate your contributions. Ghostty is a personal project for me that +> I maintain in my free time. If you're expecting me to dedicate my personal +> time to fixing bugs, maintaining features, and reviewing code, I do kindly +> ask you spend a few minutes reading this document. Thank you. ❤️ + +## Quick Guide + +**I'd like to contribute!** + +All issues are actionable. Pick one and start working on it. Thank you. +If you need help or guidance, comment on the issue. Issues that are extra +friendly to new contributors are tagged with "contributor friendly". + +**I have a bug!** + +1. Search the issue tracker and discussions for similar issues. +2. If you don't have steps to reproduce, open a discussion. +3. If you have steps to reproduce, open an issue. + +**I have an idea for a feature!** + +1. Open a discussion. + +**I've implemented a feature!** + +1. If there is an issue for the feature, open a pull request. +2. If there is no issue, open a discussion and link to your branch. +3. If you want to live dangerously, open a pull request and hope for the best. + +**I have a question!** + +1. Open a discussion or use Discord. + +## General Patterns + +### Issues are Actionable + +The Ghostty [issue tracker](https://github.com/ghostty-org/ghostty/issues) +is for _actionable items_. + +Unlike some other projects, Ghostty **does not use the issue tracker for +discussion or feature requests**. Instead, we use GitHub +[discussions](https://github.com/ghostty-org/ghostty/discussions) for that. +Once a discussion reaches a point where a well-understood, actionable +item is identified, it is moved to the issue tracker. **This pattern +makes it easier for maintainers or contributors to find issues to work on +since _every issue_ is ready to be worked on.** + +If you are experiencing a bug and have clear steps to reproduce it, please +open an issue. If you are experiencing a bug but you are not sure how to +reproduce it or aren't sure if it's a bug, please open a discussion. +If you have an idea for a feature, please open a discussion. + +### Pull Requests Implement an Issue + +Pull requests should be associated with a previously accepted issue. +**If you open a pull request for something that wasn't previously discussed,** +it may be closed or remain stale for an indefinite period of time. I'm not +saying it will never be accepted, but the odds are stacked against you. + +Issues tagged with "feature" represent accepted, well-scoped feature requests. +If you implement an issue tagged with feature as described in the issue, your +pull request will be accepted with a high degree of certainty. + +> [!NOTE] +> +> **Pull requests are NOT a place to discuss feature design.** Please do +> not open a WIP pull request to discuss a feature. Instead, use a discussion +> and link to your branch. |
