Ruby - Ruby Beyond Rails - Libraries and Frameworks

Reading time ~5 minutes | November 02, 2015

Being a ruby enthusiast for a few years now, i dont think twice to mention that rails is the killer app for ruby. Rails was all possible because of ruby’s flexibility and ruby became famous due to rails’s simplicity and focus on productivity. Rails is an opinionated framework with simplest implementation of MVC which makes it super fast to get to build things even for beginners.

Having said that, ruby’s powerful, programmer friendly design helped in the evolution of a lot of other frameworks which might not have sung so well like rails but are cool enough to have a try at. Below are some of them that i would like to mention.

1) Sinatra -

Sinatra is the next most famous ruby framework after rails. It is minimalistic web framework and lightness is the core of it. Tries to be non opinionated as much as it can. This is the most famous and suitable option when you need to build simple and single page webapps and ship to production fast. Though a number of templates and helpers are added in the later versions it does not look promising to build complex apps yet.

Homepage - http://www.sinatrarb.com/

Documentation - http://www.sinatrarb.com/intro.html

Github - https://github.com/sinatra/sinatra/

2) RubyMotion -

Build mobile apps with ruby! Yes ! RubyMotion is a cross platform framework to build Android, iOS and Mac OSX apps using ruby code. Ruby code is compiled to native apis on each of these devises. RubyMotion looks promising and there are already a number of apps out on app store and google play which are built on this. Though it looks cool for rubyists, performance of the apps compared to that of the native mobile apps seem to be a bit on the southern side.

Homepage - http://www.rubymotion.com Features - http://www.rubymotion.com/tour/features/

3) Lotus -

Personally i feel Lotus very interesting since the very little exploration i could do with it. It is a modular framework with container architecture by default where multiple apps are run with the same ruby process. Though it is MVC, it maintans the separation of concerns there by staying highly non opinionated. As each component is standalone, this can be used for full stack webapps and micro services architectures.

Homepage - http://lotusrb.org/

Guides - http://lotusrb.org/guides/

Github - https://github.com/lotus/lotus

4) Padrino -

Padrino is a full stack web framework built on top of Sinatra. It claims to help developers with a number of helpers and little bit of functional support to build larger and more complex systems while keeping the lightness of Sinatra to some extent. Their github’s README has a clean and precise explanation of the framework.

Homepage - http://padrinorb.com/

Guides - http://padrinorb.com/guides/standalone-usage-in-sinatra/

Github - https://github.com/padrino/padrino-framework

5) Cuba -

Cuba is a minimalistic ruby micro framework to build weapps. It calls itself to be inspired by ‘rum’, a minimalistic rack mapper. While i m unsure about its’s popularity as framework, except for the github stars, it looks like something to give a try at if you want a lean and micro ruby framework.

Homepage - http://cuba.is/

Github - https://github.com/soveran/cuba

Guides - http://theguidetocuba.io/