Contributing to Coalesce
May 7, 2026 ยท View on GitHub
Standards and Quality
- Pull requests should solve a single problem and not include any changes that weren't necessary to solve that problem.
- Pull request titles should follow Conventional Commits.
- Unless your change is trivial (e.g. a minor documentation update, or fixing an obvious bug), it is unlikely to be accepted if you haven't discussed the work with project maintainers in a Github issue.
- Changes should be accompanied by appropriate automated tests.
- Changes should be accompanied by appropriate documentation if they affect Coalesce's API surface.
- For TypeScript/Vue code, Eslint is used to enforce style and formatting.
- For C#, you are expected to write well-formatted, well-organized code.
Installing dependencies
This project uses pnpm workspaces. To install packages, run pnpm install once in the repository root.
Debugging Code Generation
The following can be used to debug code generation against your own Coalesce project, or against the playground project in this repository.
From Visual Studio:
- Navigate to
src/IntelliTect.Coalesce.DotnetTool/Properties(on disk) orcli/IntelliTect.Coalesce.DotnetTool/Properties(Visual Studio Solution Explorer). - Create a launchSettings.json file.
- Add a launch profile similar to the following, updating the workingDirectory to point at the directory that contains your coalesce.json. Additional CLI parameters may be passed as desired.
{
"profiles": {
"MyProject": {
"commandName": "Project",
"commandLineArgs": "C:\\src\\MyProject\\coalesce.json"
}
}
}
From the command line:
Run the following command from the src/IntelliTect.Coalesce.DotnetTool project directory. Additional CLI parameters may be passed as desired.
dotnet run -- <path-to-coalesce.json> --debug
Running the Documentation
cd docs
pnpm dev
Then open the documentation in your browser at the URL provided in the output after launching.
Running the Vue3 Playground Project
Execute dotnet run, or launch the playground/Coalesce.Web.Vue3 project from Visual Studio.
If you need to run code generation for the playground project, run pnpm coalesce in the playground/Coalesce.Web.Vue3 directory. This will compile and then execute the local Coalesce CLI against the playground project.