awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
celluloid avatar

celluloid/celluloid

0
View on GitHub↗
3,870 stars·270 forks·Ruby·MIT·20 views

Celluloid

Celluloid is a concurrent object framework for the Ruby language. It implements the actor model to enable the construction of multithreaded programs where objects communicate through asynchronous message passing to avoid shared state locks.

The framework provides a system for managing asynchronous interactions without manual locking or thread management. It utilizes actor-based object orientation to handle parallel execution and non-blocking tasks.

The project covers several architecture and capability areas, including mailbox-driven execution, fiber-based task scheduling, and proxy-based method interception. It also incorporates supervision trees for fault tolerance to monitor actor lifecycles and restart failed components.

Features

  • Actor-Based Concurrency - Implements an actor-based concurrency model where isolated objects communicate via asynchronous message passing to ensure thread safety.
  • Actor Frameworks - Provides a framework for building distributed and concurrent Ruby systems using the actor model.
  • Actor Mailboxes - Provides a mailbox-driven execution system that queues incoming calls for sequential, thread-safe processing.
  • Actor Models - Provides a library for implementing actor-based concurrency and isolated state management in Ruby.
  • Fiber-Based Schedulers - Utilizes lightweight cooperative fibers to schedule tasks and suspend execution while waiting for actor responses.
  • Ruby Parallel Processing - Implements concurrency and parallelism patterns specifically for the Ruby language runtime.
  • Concurrent Object Frameworks - Serves as a comprehensive system for managing asynchronous object interactions without manual locks.
  • Asynchronous Task Execution - Allows running long-running operations in the background without blocking the main execution flow.
  • Concurrent Object Programming - Facilitates developing multithreaded applications using object-oriented patterns and background processing.
  • Supervision Trees - Implements supervision trees to monitor actor lifecycles and automatically restart failed components for fault tolerance.
  • Method Interception Proxies - Uses proxy layers to intercept method calls and convert them into asynchronous messages for actor mailboxes.
  • Multithreaded Application Architectures - Provides an architecture for scaling Ruby code across multiple threads using isolated actor states for safety.

Star history

Star history chart for celluloid/celluloidStar history chart for celluloid/celluloid

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does celluloid/celluloid do?

Celluloid is a concurrent object framework for the Ruby language. It implements the actor model to enable the construction of multithreaded programs where objects communicate through asynchronous message passing to avoid shared state locks.

What are the main features of celluloid/celluloid?

The main features of celluloid/celluloid are: Actor-Based Concurrency, Actor Frameworks, Actor Mailboxes, Actor Models, Fiber-Based Schedulers, Ruby Parallel Processing, Concurrent Object Frameworks, Asynchronous Task Execution.

Which projects share features with celluloid/celluloid?

Projects with overlapping indexed features include: puniverse/quasar — Quasar is a JVM concurrency framework that implements the actor model and a lightweight thread library. It provides… actix/actix — Actix is a Rust actor framework and concurrent programming toolkit designed for building applications that manage… egametang/et — ET is a C# game server framework and distributed actor model runtime designed for large-scale multiplayer… ponylang/ponyc — Pony is an open-source, actor-model, capabilities-secure, high performance programming language. ruby-concurrency/concurrent-ruby — Concurrent Ruby is a comprehensive concurrency toolkit for the Ruby language that provides thread-safe data… nixzhu/dev-blog — This project is a comprehensive framework for iOS application development, centered on building mobile applications…

Projects sharing features with Celluloid

These projects share indexed features with Celluloid. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • puniverse/quasarpuniverse avatar

    puniverse/quasar

    4,553View on GitHub↗

    Quasar is a JVM concurrency framework that implements the actor model and a lightweight thread library. It provides isolated execution units that communicate via asynchronous message passing to eliminate shared mutable state. The project distinguishes itself through a distributed actor system capable of operating across multiple cluster nodes with location-transparent registries and actor state migration. It utilizes a work-stealing fiber scheduler to manage millions of lightweight threads, allowing tasks to suspend during non-blocking I/O operations without stalling underlying system threads

    Javaactorsconcurrencyfibers
    View on GitHub↗4,553
  • actix/actixactix avatar

    actix/actix

    9,223View on GitHub↗

    Actix is a Rust actor framework and concurrent programming toolkit designed for building applications that manage state through an asynchronous messaging system. It provides a model where independent actors serve as autonomous units of state and logic, communicating via strongly typed messages sent to unique addresses. The framework distinguishes itself by isolating state within these actors, allowing internal data to be mutated safely during message handling without the use of locks or mutexes. It employs an asynchronous mailbox system to buffer incoming requests and uses supervision strateg

    Rustactixactoractor-model
    View on GitHub↗9,223
  • ponylang/ponycponylang avatar

    ponylang/ponyc

    6,133View on GitHub↗

    Pony is an open-source, actor-model, capabilities-secure, high performance programming language

    Ponyactor-modelpony-languagepony-source
    View on GitHub↗6,133
  • egametang/etegametang avatar

    egametang/ET

    9,813View on GitHub↗

    ET is a C# game server framework and distributed actor model runtime designed for large-scale multiplayer environments. It provides a comprehensive toolkit for building distributed game backends, incorporating a multiplayer network transport layer and a specialized suite for game AI and pathfinding. The framework is distinguished by its use of a distributed actor model to scale processing across multiple threads and servers, utilizing isolated actors for state management and messaging. It features a unified codebase architecture that allows shared logic between the server and client, enabling

    C#actorc-sharpdotnet
    View on GitHub↗9,813
Compare all 30 related projects→