Ecosystem

Plugins

Helix plugins encode the Gradle conventions, build defaults, and project structure used across the framework ecosystem.

Core Bootstrap

  • Helix - Bootstrap plugin that gives a project the default Helix baseline in one line.
  • Helix Conventions - Applies the default Helix project conventions that every standard Helix project is expected to have.
  • Helix Config - Installs and updates the .helix configuration directory from the Helix conventions configuration artifact.
  • Helix Settings - Bootstraps a settings build for Helix by configuring plugin resolution, version alignment, repositories, and the Helix version catalog.
  • Helix IDEA - Configures IntelliJ IDEA project files so Helix projects inherit the expected code style, Checkstyle integration, and related IDE defaults.

Build and Dependency

  • Build Scan Settings - Configures Develocity build scans for Helix builds and attaches CI metadata automatically when running in GitHub Actions.
  • Build Version - Derives build metadata from project.version and exposes it through a small extension that other Helix plugins can consume.
  • Build Version Tag - Keeps the root version.txt file aligned with the current Gradle project version.
  • Dependency Force - Applies hard dependency resolution overrides for specific transitive modules that Helix needs to pin globally.
  • Dependency Lock - Enables dependency locking across all configurations in the current project.
  • Dependency Management - Sets the standard Helix repository layout for project dependency resolution and layers in Helix forced dependency overrides.
  • Duplicate Strategy - Sets a default duplicate handling strategy for copy-style tasks.
  • OpenRewrite - Applies the OpenRewrite Gradle plugin so a project can run recipe-driven refactoring and modernization tasks.
  • Optional Dependencies - Adds an optional configuration that behaves like Maven optional dependencies for Java projects.
  • Optional IncludeBuild - Adds a simple helper for including composite builds only when a target directory is present.
  • Plugin Repos - Configures the standard pluginManagement repositories used by Helix plugins.
  • Recursive Include - Recursively discovers nested Gradle subprojects and includes them automatically in the current multi-project build.
  • Recursive IncludeBuild - Recursively discovers nested included builds under one or more root directories and includes them as composite builds.

Application

  • Java App - Applies the standard Helix baseline for Java application modules.
  • Java CLI - Applies the Helix baseline for command-line applications built on Java and Picocli.
  • Java DB Migrator - Applies the Helix Java application baseline for database migration services and wires integration tests into Docker Compose.
  • Java Library - Applies the standard Helix baseline for reusable Java libraries.
  • Spring Boot Web - Applies the Helix baseline for Spring Boot web services, including runtime, testing, dependency, and local-development defaults.

Quality

  • Quality - Composite quality plugin that applies the Helix Checkstyle, JaCoCo, PMD, SpotBugs, and Java Format convention plugins.
  • Quality Checkstyle - Applies Checkstyle with the Helix default rule set and reporting defaults.
  • Quality JaCoCo - Applies JaCoCo and Jacotura with Helix coverage reporting and verification defaults.
  • Quality Java Format - Applies the Palantir Java Format plugin to standardize code formatting.
  • Quality PMD - Applies PMD with the Helix default ruleset behavior.
  • Quality SpotBugs - Applies SpotBugs with Helix reporting defaults for main, test, and optional test source sets.

Security

  • Security - Composite security plugin that applies the Helix OWASP, SBOM, and Snyk convention plugins together.
  • Security OWASP - Applies the OWASP Dependency Check plugin so dependency vulnerability scans are available in Helix builds.
  • Security SBOM - Generates a CycloneDX software bill of materials and copies the JSON artifact into build resources for Java projects.
  • Security Snyk - Applies the Snyk Gradle plugin with Helix defaults for authentication, severity gating, and multi-project scans.

Testing

  • Test Unit - Applies common Helix defaults to all Gradle Test tasks in the current project.
  • Test Integration - Adds an integration source set and a matching integration test task for Java projects.
  • Test Functional - Adds a functional source set and a matching functional test task for Java projects.
  • Test Regression - Adds a regression source set and a matching regression test task for Java projects.