Skip to main content
This guide provides detailed technical information for customizing and creating your own Accelerators for Aletyx Playground. Accelerators are powerful templates that transform business models into fully structured projects, and can be tailored to meet specific organizational requirements.

Table of Contents

Accelerator Architecture

Accelerators in Aletyx Playground are Git-based templates that are applied to your business models (DMN, BPMN, etc.). Each Accelerator consists of:
  1. A Git repository with template files
  2. Configuration metadata that defines how the Accelerator appears and behaves
  3. Destination mappings that determine where your existing assets are placed
When an Accelerator is applied, Aletyx Playground clones the repository at the specified branch and applies the templates to your project, placing your existing assets in the appropriate locations.

Creating Custom Accelerators

Step 1: Fork the Base Accelerator Repository

Start by forking one of the existing Accelerator repositories:

Step 2: Configure Your Branch Structure

Each Accelerator profile typically has its own branch. For example:
  • main: General-purpose accelerator
  • dmn: DMN-focused accelerator
  • bpmn: Process-focused accelerator
Create a new branch for your custom Accelerator:

Step 3: Customize the Template Files

In your branch, you’ll find template files that define the project structure. Common files to customize include:
  • pom.xml: Define dependencies and build configuration
  • Dockerfile: Container configuration
  • application.properties: Application configuration
  • .github/workflows/: CI/CD pipeline configurations

Configuring Accelerator Profiles

Accelerators are registered in Aletyx Playground through environment variables or configuration files. The KIE_SANDBOX_ACCELERATORS environment variable accepts a JSON array of Accelerator profiles:

Configuration Parameters Explained

Customizing Project Structure

POM.XML Customization

The pom.xml file is crucial as it defines all project dependencies. Here’s an example of a customized pom.xml for a DMN-focused project:

Application Properties

The application.properties file configures your application’s runtime behavior:

Dockerfile

A custom Dockerfile for your Accelerator:

GitHub Actions Workflow

Adding a CI/CD pipeline templates to your Accelerator is also a great way to improve the time to release! This can be done by creating a base template that could be stored in the .github folder like a standard GitHub action file. This provides ease of starting to provide the means to deploy.

Advanced Customization Examples

Adding Kafka Integration

To add Kafka messaging capabilities to your Accelerator, modify the pom.xml to include:
And create event listeners in your template:
If you are using Kafka, you will need to add some properties to your application.properties file that controls the connection to Kafka, an example of some of these integrations is included below:

Database Integration

Add database support with:

Kubernetes Deployment Templates

Include Kubernetes manifests in your Accelerator:

Conclusion

Creating custom Accelerators allows you to embed organizational best practices, dependencies, deployment configurations, and CI/CD pipelines directly into the project templates. By forking the base repository and customizing the templates, you can create Accelerators tailored to your specific requirements and update as required. These provide an easy way to create standards across your projects utilizing Aletyx Enterprise Build of Kogito and Drools which helps increase confidence in running similar models across multiple projects consistently. For any organization looking to standardize their KIE project structure while accelerating development, custom Accelerators provide a powerful solution that can be continuously evolved and improved. To get started, fork the base repository at our Accelerator Repository and begin customizing the templates to meet your organization’s needs.