ergo-services/ergo

An actor-based Framework with network transparency for creating event-driven architecture in Golang. Inspired by Erlang. Zero dependencies.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 22 minutes ago
Added to GitGenius on September 14th, 2026
Created on September 21st, 2017
Open Issues & Pull Requests: 0 (+0)
GitHub issues: Enabled
Number of forks: 191
Total Stargazers: 4,658 (+0)
Total Subscribers: 57 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 2.4 hours
Mean response time: 7.6 days
90th percentile: 4.7 days
Tracked items: 34

Most active contributors

Sign in to see contributor activity.

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Only 13% of issues opened in the past year have been closed. Three people close 68% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 0
New in 7 days: 0
Closed in 7 days: 0
Avg open age: N/A days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (3)
  • feature request (2)
  • improvement (2)
  • question (2)
  • wontfix (2)
  • help wanted (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Ergo is an actor-based framework for building distributed systems in Go that provides network transparency and automatic supervision, inspired by Erlang and OTP with zero external dependencies.

The framework solves the complexity that emerges as goroutine-based systems scale by replacing manual concurrency management with an actor model where isolated processes communicate exclusively through messages. Each actor has a sequential mailbox, eliminating shared state and race conditions by design. Supervision trees automatically restart failed actors, and the same message-passing API works transparently across a cluster without requiring separate service discovery or connection management logic.

Ergo suits teams building real-time backends, IoT platforms, multi-agent AI systems, or event-driven microservices where fault tolerance and distributed addressability matter more than simplicity for small systems. It eliminates the need for external pub/sub intermediaries by delivering cluster-wide events efficiently—one network message per node regardless of subscriber count. The framework is most valuable when you would otherwise spend engineering effort on retry logic, connection pooling, and failure recovery. Compared to raw goroutines and channels, it trades the simplicity of local concurrency for automatic crash isolation, built-in service discovery, and guaranteed message delivery with priority queues.

The project maintains active development with regular commits addressing bug fixes and feature enhancements. Documentation is comprehensive, covering core patterns, advanced topics like the Model Context Protocol integration for AI agents, and diagnostic tools. The codebase demonstrates attention to performance optimization, with benchmarking infrastructure built into the repository and detailed measurement methodology documented. Community engagement appears steady through issue resolution and example applications that showcase practical use cases.