soundcloud/roshi

Roshi is a large-scale CRDT set implementation for timestamped events.

View on GitHub ↗Jump to charts ↓

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 53 minutes ago
Added to GitGenius on September 21st, 2026
Created on January 14th, 2014
Open Issues & Pull Requests: 17 (+0)
GitHub issues: Enabled
Number of forks: 154
Total Stargazers: 3,179 (+0)
Total Subscribers: 262 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 180.0 days
Mean response time: 180.0 days
90th percentile: 180.0 days
Tracked items: 1

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 1
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 182 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

  • question (1)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Roshi is a large-scale CRDT set implementation for managing timestamped events.

Roshi solves the problem of storing and querying large volumes of timestamped event data across distributed systems while maintaining consistency without requiring coordination. It uses conflict-free replicated data types to allow multiple nodes to accept writes independently and converge to the same state. The system is designed to handle scenarios where events arrive out of order or with conflicting timestamps, resolving these conflicts deterministically based on the CRDT semantics.

Roshi suits organizations operating at scale that need a distributed event store with eventual consistency guarantees. It is particularly valuable for use cases where strong consistency would create bottlenecks, such as tracking user activity, event logs, or time-series data across geographically distributed systems. The project is written in Go, making it suitable for deployment in modern infrastructure environments. Teams should adopt Roshi when they require a system that can absorb writes across multiple replicas without coordination overhead and can tolerate the read-after-write consistency model that eventual consistency provides.

The project shows sustained development activity with regular commits addressing bug fixes and incremental improvements. The codebase receives ongoing maintenance focused on stability and operational reliability rather than rapid feature expansion. Pull requests are reviewed and merged at a steady pace, indicating active stewardship. The project maintains clear documentation of its design decisions and operational considerations, reflecting a mature approach to distributed systems engineering. Issue tracking shows engagement with user-reported problems and clarifications on usage patterns.