Thank you for your interest in contributing to Elsa Extensions! 🎉
We welcome contributions from the community to enhance workflow automation by adding new integrations, improving existing ones, fixing bugs, or refining documentation.
Click the Fork button on the top right of this repository and clone it to your local machine:
git clone https://github.com/YOUR-USERNAME/elsa-extensions.git
cd elsa-extensionsEnsure you have the following installed:
- .NET 8 or higher SDK
- A text editor or IDE (Visual Studio, Rider, VS Code)
- Docker (if working on extensions that require local services)
Then restore dependencies:
dotnet restore- Check our Issues for "good first issue" labels.
- If you have a new idea, open an issue to discuss before starting development.
Create a new branch for your changes:
git checkout -b feature/extension-nameFollow the repository's structure when adding a new extensions:
[group-name]/
└── Elsa.[extension-name]/
├── Services/
├── Activities/
├── AI/
...
Ensure your code follows the project’s conventions and add meaningful commit messages:
git add .
git commit -m "Add support for [extension-name]"
git push origin feature/extensions-nameGo to your fork on GitHub and open a PR to merge your branch into main.
Please include:
- A clear description of your changes.
- Relevant issue numbers, if applicable.
- Screenshots/logs (if UI/functional changes).
Our team will review your PR, provide feedback if necessary, and merge it once approved! ✅
- Code Style: Follow
.editorconfigsettings and existing project conventions. - Documentation: Every extension must have a
README.mdat the root of its group folder or project. See README-TEMPLATE. - Tests: If possible, add unit/integration tests for your changes.
If you need assistance, feel free to ask in Discussions or open an issue.
🚀 Happy coding and thank you for contributing to Elsa Extensions!