Monorepository containing Go client libraries and integration connectors used across the NativeBPM platform.
- httpstream — Flat, stream-first HTTP client designed for efficient large-file uploads using multipart streaming.
- gotenberg — Go client for Gotenberg document conversion service (HTML, Office docs, PDFs merging).
- sequin — Client and sync helpers for Sequin CDC and event stream platform.
- telegram — High-performance, stream-first Go client library for the Telegram Bot API with zero-buffer media uploads.
- nativebpm — Public Go SDK client for interacting with the NativeBPM engine using Fluent API builders.
- bpmn — Lightweight BPMN 2.0 process interpreter and DMN decision table evaluator with support for Wait States, Sagas, and WebAssembly workers.
- camunda — Client library for Camunda BPMN workflow engine with highly optimized task locking and Postgres CDC integration.
- wasman — Reusable Durable Execution Engine for running fault-tolerant Go/TinyGo business logic in an isolated WASM sandbox with O(1) memory consumption and transparent checkpointing.
- wasman/runner — Light-weight guest-side Runner API and Fluent Workflow builder for WASM workers, completely decoupled from host dependencies.
- temporal — Wrapper client, worker setup configurations, and orchestration utilities for Temporal.io.
The project uses Go Workspaces to manage multiple modules.
- Go 1.26+
golangci-lint(can be installed viamake lint-install)
make tidy— Tidy up dependencies and sync Go workspace.make lint— Rungolangci-lintacross all module directories.make tag— Create and push an annotated release tag for a specific module (e.g.gotenberg/v8.33.1).
MIT — see LICENSE.