Temporal's Go SDK for authoring scalable and resilient workflows and activities.
Temporal Go SDK is the official Go framework for building applications on the Temporal platform. It allows developers to write long-running, fault-tolerant business logic as workflows and activities, abstracting away the complexities of distributed systems.
Go developers building scalable backend services, microservices, or business process automation that require resilience and durability.
It provides a native Go API for Temporal's powerful orchestration engine, enabling developers to write complex workflows with built-in retries, timeouts, and state management without managing infrastructure.
Temporal Go SDK
Provides a clean, native interface for defining workflows as deterministic Go functions, aligning with Go best practices and developer ergonomics as stated in the philosophy.
Includes a workflow determinism checker tool to detect non-deterministic code, ensuring reliability for long-running processes, as highlighted in the README.
Built-in support for Go's standard slog package, demonstrated in the README with code snippets, enabling structured logging without additional dependencies.
Supports multiple payload converters like Proto, JSON, and binary, with migration helpers for version upgrades, as detailed in the Key Features and upgrading notes.
Upgrades, such as the protobuf switch in v1.26.0, introduce incompatible changes like JSON encoding issues, requiring manual configuration adjustments per the README.
Depends on running a Temporal server cluster, adding deployment and operational complexity compared to standalone libraries or simpler frameworks.
Requires understanding workflow determinism and Temporal's orchestration model, which can be a barrier for developers new to distributed systems.
A cloud-native Go microservices framework with cli tool for productivity.
A standard library for microservices.
Your ultimate Go microservices framework for the cloud-native era.
The Go language implementation of gRPC. HTTP/2 based RPC
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.