Microservices with Haskell
Build and orchestrate Haskell microservices with Camunda's process orchestration platform. Connect your functional Haskell services to BPMN workflows for reliable, type-safe process automation.
Haskell Microservices Orchestration with Camunda
Haskell client for Camunda
Community-supported Haskell client for Camunda built on the gRPC protocol. Integrate your Haskell services with Camunda Cloud using type-safe, functional APIs.
Functional job workers
Define Camunda job workers as pure Haskell functions. Map BPMN service tasks to Haskell IO actions with full type safety and composability.
Type-safe process variables
Use Haskell's type system to model BPMN process variables. Aeson-based JSON serialization ensures compile-time safety for all variable exchange.
Concurrency with STM
Haskell's Software Transactional Memory (STM) enables safe, concurrent job workers. Handle multiple Camunda jobs in parallel with composable concurrency primitives.
Effects and error handling
Use ExceptT, EitherT, or modern effects libraries (polysemy, effectful) to model Camunda job failures as typed Haskell errors.
GHC and Cabal integration
Standard Cabal/Stack project setup. Add the Camunda client as a dependency and deploy as a static binary or Docker container.