Contribution Guide

Thank you for contributing to the Syncfusion® Toolkit for Blazor. Five steps take you from a fork to a pull request. For a larger change, such as a new component or a breaking API change, open an issue first so the team can confirm it is in scope.

By participating you agree to the Code of Conduct. To report a security vulnerability, follow SECURITY.md and do not open a public issue.

1. Fork and clone the repository

Fork syncfusion/blazor-toolkit, then clone your fork. You need the .NET SDK (8.0, 9.0, or 10.0), Node.js 22 with npm, and Git.

git clone https://github.com/<your-account>/blazor-toolkit.git
cd blazor-toolkit
npm ci

Success check: dotnet --list-sdks lists an SDK that matches a target framework of the project you will edit.

Before starting, open or claim an issue (for example one labelled good first issue) so nobody duplicates your work.

2. Create a focused branch

Branch from main using a descriptive prefix: fix/, feat/, docs/, test/, or chore/. Keep one logical change per branch.

git checkout -b fix/<short-description> main

Success check: git branch --show-current prints your new branch name.

3. Make and validate the change

Follow the .NET Foundation coding style with two project exceptions: omit the private keyword and use hard tabs. Add or update tests; bug fixes need a regression test. Then run the same checks CI runs:

dotnet restore src/Syncfusion.Blazor.Toolkit.csproj
dotnet build   src/Syncfusion.Blazor.Toolkit.csproj -c Release --no-restore
dotnet test    tests/Syncfusion.Blazor.Toolkit.BUnitTest/ -c Release
npx playwright test --reporter=line
npm run lint:security
npx gulp security-xss-scan

Success check: every command completes without errors. Avoid new NuGet dependencies unless you justify them in the pull request. Do not commit secrets, bin/, obj/, or node_modules/.

More detail: DEVELOPMENT.md and CONTRIBUTING.md.

4. Commit using the repository convention

Use a Conventional Commits style message and reference the issue you fix.

git add -A
git commit -m "fix(SfDialog): prevent focus loss when closing"
git push origin fix/<short-description>

Success check: the branch appears on your fork with your commits.

5. Open a pull request

Open a pull request targeting main and complete the pull request template.

  • Include Fixes #<issue> on its own line in the description.
  • Attach Before / After screenshots for any visible UI change.
  • Tick Allow edits from maintainers.

Success check: CI (bUnit on .NET 8, 9 and 10, Playwright, vulnerability scan, ESLint security scan, XSS scan, and pack) passes. At least two team members review the pull request, and a maintainer squash-merges it once approved. You are then listed on the Contributors page.

Need help? Use GitHub Discussions or SUPPORT.md.

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.