# Flowable — Open-Source Business Process and Workflow Engine > Lightweight Java engine for BPMN 2.0, CMMN, and DMN workflows with a modeler UI, REST API, and native Spring Boot integration for building process-driven applications. ## Install Save in your project root: # Flowable — Open-Source Business Process and Workflow Engine ## Quick Use ```bash git clone https://github.com/flowable/flowable-engine.git cd flowable-engine mvn clean install -DskipTests # Or use the Spring Boot starter: # Add org.flowable:flowable-spring-boot-starter to pom.xml ``` ## Introduction Flowable is a compact, high-performance process engine written in Java that supports BPMN 2.0, CMMN, and DMN standards. It provides everything needed to model, deploy, and execute business processes and decision tables, from a graphical modeler to a REST API and task management UI. ## What Flowable Does - Executes BPMN 2.0 process definitions with support for user tasks, service tasks, gateways, and events - Handles case management workflows using the CMMN standard - Evaluates business rules and decision tables via the DMN engine - Provides a web-based modeler for designing processes visually - Exposes a REST API for deploying definitions and managing process instances programmatically ## Architecture Overview Flowable consists of separate engines for BPMN, CMMN, and DMN that share a common persistence layer backed by a relational database. Each engine manages its own lifecycle and state machine. The Spring Boot starter auto-configures all engines with sensible defaults, and the REST application wraps them in a single deployable service. ## Self-Hosting & Configuration - Embed the engine as a Maven dependency in any Java or Kotlin application - Use the Spring Boot starter for zero-configuration setup with auto-database-migration - Supports PostgreSQL, MySQL, Oracle, SQL Server, and H2 as backing stores - Configure async job executors and history levels in flowable.cfg.xml or application.properties - Deploy the Flowable UI apps (modeler, admin, task) as separate Spring Boot services ## Key Features - Standards-compliant BPMN 2.0, CMMN 1.1, and DMN 1.1 execution in a single engine - Hot-deploy process definitions at runtime without restarting the application - Built-in async job executor for timer events and asynchronous service tasks - Comprehensive history and audit logging for compliance and debugging - Lightweight footprint suitable for embedding in microservices ## Comparison with Similar Tools - **Camunda** — similar BPMN engine with a larger enterprise ecosystem; Flowable is more lightweight and permissively licensed - **Activiti** — Flowable forked from Activiti and has since added CMMN, DMN, and significant performance improvements - **Temporal** — code-first workflow orchestration; Flowable uses visual BPMN diagrams as the primary authoring format - **Zeebe** — cloud-native workflow engine by Camunda; Flowable offers a more traditional embedded engine model ## FAQ **Q: How does Flowable relate to Activiti?** A: Flowable was created by the original Activiti founders and has evolved independently with new engines and features since 2016. **Q: Can I use it without Spring Boot?** A: Yes. The core engine is standalone Java and can be configured programmatically without any Spring dependency. **Q: Is it production-ready?** A: Yes. Flowable is used in production by banks, insurance companies, and government organizations for mission-critical process automation. **Q: What license does it use?** A: The open-source edition is Apache 2.0. A commercial edition with additional features and support is also available. ## Sources - https://github.com/flowable/flowable-engine - https://www.flowable.com/open-source --- Source: https://tokrepo.com/en/workflows/asset-bbd8f24b Author: AI Open Source