Thank you for your interest in contributing to the CadQuery Module for FreeCAD. Contributions by the community are welcome and appreciated.
This guide was created to help get contributors up and running as quickly as possible. Following these guidelines will help ensure that issues get resolved more quickly and efficiently.
You do not need to be a software developer to have a big impact on this project. Contributions can take many forms including, but not limited to, the following:
- Writing and improving documentation
- Triaging bugs
- Submitting bugs and feature requests
- Creating tutorial videos and blog posts
- Helping other users get started and solve problems
- Telling others about this project
- Helping with translations and internationalization
- Helping with accessibility
- Contributing bug fixes and new features
It is asked that all contributions to this project be made in a respectful and considerate way. This project has adopted the Python Community Code of Conduct's guidelines.
Beyond being good to one another, there are technical guidelines for contributing to this project as well.
- Create issues and pull requests for any major changes and enhancements that you wish to contribute back to the project. Discuss things transparently and get community feedback.
- Be welcoming and encouraging to new contributors. Again, see the Python Community Code of Conduct.
There is no need to be nervous about making your first contribution. Everybody is a beginner at some point, and there is no better way to learn than just jumping in. If you are not sure what to do, open an issue so that a community member can help you through it.
When filing an bug report issue, make sure to answer these questions:
- What version of the software are you running?
- What operating system are you running the software on?
- What are the steps to reproduce the bug?
If you find yourself wishing for a feature that does not exist in this module, you are probably not alone. There are bound to be others out there with similar needs. Open a issue which describes the feature you would like to see, why you need it, and how it should work.