Setting up
Contributions to Sedaia Rig Interfaces can include bug reports, feature proposals, documentation, automated tests, extension code, and standalone Blender helper scripts.
SACR rig files are not accepted contributions
Section titled “SACR rig files are not accepted contributions”Do not submit edits, additions, replacements, or other changes to SACR
.blend files. Blender files are binary assets, and this project’s Git and
Blender workflow cannot reliably review, merge, or integrate contributed rig
file changes.
Report a rig defect or propose an improvement through the issue tracker instead. Include the SACR version, Blender version, rig variant, and clear reproduction steps or use-case details.
Report an issue or propose a feature
Section titled “Report an issue or propose a feature”Search the SACR issue tracker before opening a new issue. If no existing issue covers the problem, include:
- The Sedaia Rig Interfaces, SACR, and Blender versions involved
- The rig variant, if applicable
- Steps to reproduce the behavior
- The expected and actual outcome
- Relevant logs or screenshots with private information removed
For feature proposals, describe the workflow that needs improvement and any compatibility constraints.
Set up extension development
Section titled “Set up extension development”You need Blender 4.2 or newer, Python 3.13 or newer, and uv. Fork and clone the SACR repository, then run the following commands from its root:
uv sync --group devuv run python -m compileall Extension/srcuv run python -m unittest discover -s Extension/tests -vUse the shared PyCharm or Visual Studio Code workspace configuration provided by the repository for interactive extension work. Select a compatible Blender installation and validate registration, UI, and context-sensitive behavior in Blender; Python compilation and isolated unit tests cannot prove those runtime behaviors.
Make a focused change
Section titled “Make a focused change”- Keep extension runtime code in
Extension/srcand reusable tests inExtension/tests. - Keep operators and panels thin; put reusable network, file, and business
logic in the appropriate
libpackage. - Keep the extension manifest accurate and preserve its identity unless a deliberate migration is part of the change.
- Update this documentation when user-facing behavior, setup, compatibility, or workflows change.
- Do not include generated files, local Blender state, downloaded assets, or personal IDE configuration in a merge request.
Submit a merge request
Section titled “Submit a merge request”- Create a focused branch in your fork.
- Run the checks relevant to the change and test Blender behavior where applicable.
- Open a merge request against the SACR repository.
- Summarize the change, link the relevant issue, and list automated and manual