diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..ebe12f7 --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,32 @@ +## Issues + +I want to hear about any issues you encounter while using age. + +Particularly appreciated are well researched, complete [issues](https://github.com/FiloSottile/age/issues/new/choose) with lots of context, **focusing on the intended outcome and/or use case**. Issues don't have to be just about bugs: if something was hard to figure out or unexpected, please file a **[UX report](https://github.com/FiloSottile/age/discussions/new?category=UX-reports)**! ✨ + +Not all issue reports might lead to a change, so please don't be offended if yours doesn't, but they are precious datapoints to understand how age could work better in aggregate. + +## Pull requests + +age is a little unusual in how it is maintained. I like to keep the code style consistent and complexity to a minimum, and going through many iterations of code review is a significant toil on both contributors and maintainers. age is also small enough that such a time investment is unlikely to pay off over ongoing contributions. + +Therefore, **be prepared for your change to get reimplemented rather than merged**, and please don't be offended if that happens. PRs are still appreciated as a way to clarify the intended behavior, but are not at all required: prefer focusing on providing detailed context in an issue report instead. + + + +## Other ways to contribute + +age itself is not community maintained, but its ecosystem very much is, and that's where a lot of the strength of age is! Here are some ideas for ways to contribute to age and its ecosystem, besides contributing to this repository. + +* **Write an article about how to use age for a certain community or use case.** The number one reason people don't use age is because they haven't heard about it and existsing tutorials present more complex alternatives. +* Integrate age into existing projects that might use it, for example replacing legacy alternatives. +* Build and maintain an [age plugin](https://c2sp.org/age-plugin) for a KMS or platform. +* Watch the [discussions](https://github.com/FiloSottile/age/discussions) and help other users. +* Provide bindings in a langauge or framework that doesn't support age well. +* Package age for an ecosystem that doesn't have packages yet. + +If you build or write something related to age, [let me know](https://github.com/FiloSottile/age/discussions/new?category=general)! 💖