Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Go
  3. Temporal

Temporal

MITGov1.43.0

Temporal's Go SDK for authoring scalable and resilient workflows and activities.

Visit WebsiteGitHubGitHub
880 stars298 forks0 contributors

What is Temporal?

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.

Target Audience

Go developers building scalable backend services, microservices, or business process automation that require resilience and durability.

Value Proposition

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.

Overview

Temporal Go SDK

Use Cases

Best For

  • Building resilient microservices with automatic retry and error handling
  • Orchestrating long-running business processes like order fulfillment or data pipelines
  • Implementing saga patterns for distributed transactions
  • Creating durable timers and scheduling delayed tasks
  • Developing fault-tolerant background job processors
  • Migrating from legacy workflow systems to a modern orchestration platform

Not Ideal For

  • Real-time applications requiring sub-second latency and minimal overhead
  • Simple CRUD-based microservices without complex orchestration needs
  • Teams without the resources to deploy and maintain a Temporal server cluster

Pros & Cons

Pros

Idiomatic Go API

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.

Determinism Enforcement

Includes a workflow determinism checker tool to detect non-deterministic code, ensuring reliability for long-running processes, as highlighted in the README.

Seamless Logging Integration

Built-in support for Go's standard slog package, demonstrated in the README with code snippets, enabling structured logging without additional dependencies.

Flexible Data Serialization

Supports multiple payload converters like Proto, JSON, and binary, with migration helpers for version upgrades, as detailed in the Key Features and upgrading notes.

Cons

Breaking Changes

Upgrades, such as the protobuf switch in v1.26.0, introduce incompatible changes like JSON encoding issues, requiring manual configuration adjustments per the README.

Infrastructure Overhead

Depends on running a Temporal server cluster, adding deployment and operational complexity compared to standalone libraries or simpler frameworks.

Steep Learning Curve

Requires understanding workflow determinism and Temporal's orchestration model, which can be a barrier for developers new to distributed systems.

Frequently Asked Questions

Quick Stats

Stars880
Forks298
Contributors0
Open Issues167
Last commit2 days ago
CreatedSince 2019

Tags

#async-processing#service-bus#open-source#workflow-engine#workflow-orchestration#temporal#distributed-systems#workflow-automation#fault-tolerance#golang#microservices#sdk#backend#durable-execution#go#orchestration

Built With

G
Go

Links & Resources

Website

Included in

Go169.1k
Auto-fetched 9 hours ago

Related Projects

Go-zeroGo-zero

A cloud-native Go microservices framework with cli tool for productivity.

Stars32,978
Forks4,292
Last commit5 days ago
go-kitgo-kit

A standard library for microservices.

Stars27,448
Forks2,446
Last commit1 year ago
KratosKratos

Your ultimate Go microservices framework for the cloud-native era.

Stars25,650
Forks4,157
Last commit29 days ago
grpc-gogrpc-go

The Go language implementation of gRPC. HTTP/2 based RPC

Stars22,921
Forks4,665
Last commit2 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub