A set of Rails responders to dry up your application by automating common response patterns like flash messages and HTTP caching.
Responders is a Ruby gem for Rails applications that provides a set of modules to automate and standardize controller responses. It eliminates repetitive code by handling common patterns like flash message setting, HTTP caching headers, and redirect logic, making controllers more concise and maintainable.
Rails developers building RESTful applications who want to reduce boilerplate in controllers and enforce consistent response behavior across actions.
Developers choose Responders to adhere to DRY principles, simplify controller code, and ensure predictable API responses with built-in support for caching, flash messages, and flexible redirects—all while staying aligned with Rails conventions.
A set of Rails responders to dry up your application
FlashResponder automatically sets I18n-based flash messages for actions like create and update, eliminating manual assignments and ensuring consistent user feedback across controllers.
HttpCacheResponder adds Last-Modified headers and returns 304 Not Modified for unchanged resources, simplifying API caching without extra code in controllers.
Enforces consistent redirects and error handling, such as redirecting to collection index on success with CollectionResponder, reducing duplication in RESTful Rails apps.
Allows cherry-picking responders per controller and building custom ApplicationResponders, offering flexibility to adapt response behavior without bloating code.
Requires running an install generator and configuring an ApplicationResponder, adding initial complexity compared to vanilla Rails controllers for simple apps.
Heavily relies on Rails REST conventions; deviations like custom error handling or non-standard routes can lead to unexpected behavior, as noted with error checking via model errors instead of valid? calls.
Responders check model errors directly, not validation status, which can cause issues if controllers don't trigger saves properly, potentially leading to incorrect flash messages or redirects without clear debugging cues.
A deployment automation tool built on Ruby, Rake, and SSH.
Rack middleware for blocking & throttling
Best practices for running Rails in production
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.