Celluloid is a framework for building asynchronous and multithreaded Ruby programs using object-oriented concepts.
Revival Process Underway
Celluloid is in the process of being refactored and released back into the wild during
Google Summer of Code. The next era will not have one individual active maintainer, but a team of collaborators. Going forward, previously dormant maintainer Donovan Keme is returning to support future primary maintainer Emese Padányi during
GSoC 2020. Her plan extends past the Summer program, and aims to revive the community and codebase of
Celluloid together. Backing this process are Harsh Deep and
GSoC alumni Dilum Navanjana. We welcome your collaboration and contributions in this massive work.
The codebase is being refactored to pursue a stable release with no deprecation warnings, and with this cleaned up:
Diagram meticulously developed by Emese Padányi
Proudly supported by the best cloud infrastructure provider in the world:
Please see the Celluloid Wiki for more detailed documentation and usage notes.
The following API documentation is also available:
See also: Projects Using Celluloid
Reel: An "evented" web server based on
- DCell: The Celluloid actor protocol distributed over 0MQ
ECell: Mesh strategies for
Celluloidactors distributed over 0MQ
Celluloid::IO: "Evented" IO support for
Celluloid::ZMQ: "Evented" 0MQ support for
Celluloid::DNS: An "evented" DNS server based on
Celluloid::SMTP: An "evented" SMTP server based on
- nio4r: "New IO for Ruby": high performance IO selectors
- Timers: A generic Ruby timer library for event-based systems
Contributing to Celluloid
- Fork this repository on github
- Make your changes and send us a pull request
- Pull requests will be reviewed for inclusion in the project
Copyright (c) 2011-2018 Tony Arcieri, Donovan Keme.
Distributed under the MIT License. See LICENSE.txt for further details.