Lotus is a complete web framework for Ruby with a strong emphasis on object oriented design and testability. If you use it, you employ less DSLs and more objects, zero monkey-patching, separation of concerns between MVC layers. Each library is designed to be small, fast and testable.
Inheriting from Ruby's classes can be harmful. Composition should be preferred over inheritance, but beware of the unexpected behaviors.
Rails is not dead. Debating about things such as the hexagonal architecture isn't an assault to the framework, but a way to evolve as a community. If they feel under attack, we have a problem. Please speak up.
All these discussions about software design are missing one detail: we are all wrong. Everyone has a vision that can be found great by some people, and deprecable by others. When it comes to talk about opinions this is the way that things work. If nobody's right, we're all wrong.
Almost all the Ruby frameworks for the Model layer mix up business logic with database details. This kind of architecture leads to god classes, slow build times and to a general poor design. What if we assign these roles to smaller components that are able to collaborate together? Imagine how life changing would be to work just with object, without worrying how to persist them. How easy and fast would be testing them? How small and well defined would be your objects? Let me introduce Lotus::Model.