# Contributing

We strongly encourage users to contribute improvements to Building Blocks when
they identify gaps is performance or functionality. Please also be cognizant of
the fact that we desire an elegant and coherent design for our feature set. If
you have an idea for how to improve Building Blocks, please consult the roadmap,
issue tracker, and project board to see if your idea is already tracking.
Otherwise, please discuss your plan via either our Discord server or by opening
an issue. We generally prefer for large new features to first take the form of a
working prototype in a separate repository to demonstrate the added value, then
we can begin discussing how to integrate those ideas into the library.

Pull requests are expected to add unit tests for complex logic and benchmarks
where offering good performance is expected to be challenging. Please ask if you
have questions about how to test something.
