Contributing
July 25, 2025 ยท View on GitHub
Questions
If you have questions about implementation details, help or support, then please use our dedicated community forum at Github Discussions PLEASE NOTE: If you choose to instead open an issue for your question, your issue will be immediately closed and redirected to the forum.
Reporting Issues
If you have found what you think is a bug, please file an issue. PLEASE NOTE: Issues that are identified as implementation questions or non-issues will be immediately closed and redirected to Github Discussions
Suggesting new features
If you are here to suggest a feature, first create an issue if it does not already exist. From there, we will discuss use-cases for the feature and then finally discuss how it could be implemented.
Development
Before proceeding with development, ensure you match one of the following criteria:
- Fixing a small bug
- Fixing a larger issue that has been previously discussed and agreed-upon by maintainers
- Adding a new feature that has been previously discussed and agreed-upon by maintainers
Development Workflow
- Fork this repository, we prefer the
feat-*branch name style - Ensure you have
pnpminstalled - Install projects dependencies and linkages by running
pnpm install - Auto-build and auto-test files as you edit by running
pnpm dev - Implement your changes and tests
- To run examples, follow their individual directions. Usually this includes:
- cd into the example directory
- Do NOT install dependencies again or do any linking. Nx already handles this for you. Only run install from the project root.
- Starting the dev server with
pnpm devorpnpm start(from the example directory)
- To test in your own projects:
- Build/watch for changes with
pnpm build/pnpm dev
- Build/watch for changes with
- Document your changes in the appropriate documentation website markdown pages
- Commit your work and open a pull request
- Submit PR for review
Adding a new example
- Clone an existing example into the appropriate
examplesdirectory - Name it the example name in kebab-case
- Update the new example's package.json to match the new example name and any other details
- Check dependencies for unused packages
- Install any additional packages to the example that you may need
- Update the docs/config.json file to include the new example in the navigation sidebar
- Commit the example eg.
docs: Add example-name