You want to help us improve our little library? That's awesome! You're awesome!
Whether you have a feature request, found a bug, want to add some code of your own or even just have a question - all of these are very welcome.
Our library is pretty small, so let's try and go easy on the rules. :)
- Have a question? Open an issue!
- Found a bug? Open an issue!
- Would you like to request a feature, change or improvement? Open an issue!
You could also always check out list of issues and see if there's any discussions you want to share your thoughts on.
Wow, that's even better!
In principle this as easy as forking the repository, making some changes and opening a pull request. From there, we'll review your PR as soon as we can manage, ask questions or request changes if necessary, and once we're happy merge it into our main branch. It's that easy!
Due to the low-level and high-performance nature of this library, we are quite opinionated on the semantics of our code and the features we support. So, we strongly recommend you submit code for an existing issue, or create an issue to propose a change before you get going. If you're feeling adventerous, of course feel free to go ahead in either case, but there's a chance we may decline the code change if we feel it doesn't fit with the purpose of our libraries. Still, we're very open to suggestions and good arguments.
You can also browse the existing issues for inspiration. You can pick up anything, but we also have the good-first-issue
label to indicate which issues are easy to pick up for someone new to the code base.
When writing code for Bearded.Graphics, keep the following things in mind:
- We like pull requests to be as small as possible, but as large as necessary, to make them as easy to review as possible
- We like organised, consistent, clean, readable and maintainable code, see what's already there for examples (or submit a change if you think you can improve it!)
- We like modern C# features, type-safety and care about performance (a lot)
Also remember to assign yourself to an issue if you start working on it.
Be as clear as you can: Whether you're opening your own issue or PR, or just commenting on them, take the time to express your ideas as clearly as you can. The clearer your message, the better we will understand you, and the easier it will be for us to help you or to take your thoughts into consideration.
Don't worry about not knowing or understanding things: Everyone has questions, gaps in their knowledge, or is unfamilar with certain topics. If you're unsure about anything, just ask! There are no dumb questions.
Expect that we will ask for changes to your PR: No hard feelings, but we'll likely see things that can be improved or be more in line with existing code. If you're happy to make those changes, we'll be happy to accept your code!