Kestra Plugin Developer Guide – Build and Publish Plugins
Browse Kestra’s integrations and learn how to create your own plugins.
Build, test, and publish Kestra plugins
Plugins are the building blocks of Kestra’s tasks and triggers. They encompass components interacting with external systems and performing the actual work in your flows.
Kestra comes prepackaged with hundreds of plugins, and you can also develop your own custom plugins.
To integrate with your internal systems and processes, you can build custom plugins. If you think it could be useful to others, consider contributing your plugin to our open-source community.
Set Up for Plugin Development
Set up your development environment for creating Kestra plugins, including Java, IntelliJ IDEA, and Gradle configuration.
Contribution Guidelines
Guidelines for contributing to Kestra plugins, ensuring easy review, quality assurance, consistency, safety, and maintainability. Follow rules for PRs, properties, HTTP, JSON, new plugins, and tests.
Gradle Configuration
Configure Gradle for Kestra plugin development, including dependencies, mandatory settings, and shadow jar creation.
Develop a Task
Step-by-step guide to developing custom Task plugins for Kestra, including properties, run logic, outputs, and validation.
Develop a Trigger
Learn how to develop custom Trigger plugins for Kestra, including Polling and Realtime triggers.
Develop a Condition
Develop custom Condition plugins for Kestra to control flow execution logic based on specific criteria.
Add Unit Tests
Learn how to write unit tests for your Kestra plugins using JUnit and the Kestra testing framework.
Document Your Plugin
Document your Kestra plugins using annotations and schemas to generate documentation for the UI and website.
Build and Publish a Plugin
Learn how to build and publish your Kestra plugins to Maven Central using Gradle and GitHub Actions.
Was this page helpful?