Contributor Guidelines¶
Thinking about contributing to toolbox? Awesome! We accept a variety of different types of contributions:
Issues and Ideas¶
We welcome bug reports and feature requests. Please open an issue on GitHub or post to /r/toolbox_nxg for general discussion.
Documentation¶
User documentation for Toolbox-NXG is published here. If you’d like to contribute to the docs, the source is in the docs/ directory of the repository. Feel free to ask questions on /r/toolbox_nxg or in a GitHub issue.
Third-party developer documentation (wiki schemas, integration guides) lives in Schema Reference.
Contributing Code¶
We review and accept pull requests for new features and bug fixes. Here’s some information that will be useful for developers looking to get started:
Code/Programming style guidelines¶
Since toolbox is a project that receives contributions from multiple people from various programming backgrounds, it’s important to be aware of style conventions. See the Coding Style Guide for the full guide.
Contributing completely new functionality¶
We welcome new functionality, however it is always possible that someone is already working on something you have thought up or that we have not implemented something deliberately. So if you are considering coding new functionality it is always a good idea to first check. Simply open an issue on GitHub or post to /r/toolbox_nxg.
API reference and utility functions¶
We have a lot of utility functions in toolbox ready to be used for background operations as well as interface building. Before writing something new, check whether it already exists.
The API Reference is the primary resource — it documents all exported utilities and is generated directly from JSDoc comments in the source. You can regenerate it locally with npm run docs:api. Additional context:
The Module Architecture guide details how the general toolbox module structure works.
JSDoc comments alongside function definitions are the ground truth for internal APIs.
When things are unclear, don’t be afraid to ask in a GitHub issue or on the subreddit.
Project structure¶
See Project Structure for a current overview of the repository layout.
Building and testing¶
See Building and Testing for full instructions on building the extension, running tests, and the pre-commit checklist.
Maintainer information¶
Release versioning and the tagging procedure are documented in Releasing.