Padrino 0.12.0 a step closer to 1.0
March 24, 2014Padrino is a great little Ruby based framework with support for the most common ruby template engines and ORMs. I use it to power my website and I’m really happy with it and the easy I18n integration. Ghost is powering this blog if you wonder.
Roughly six weeks ago Padrino 0.12.0 was released by the Padrino Team and it includes some great updates and bug fixes. Most notable is;
- Full support for Ruby 2.1
- ActiveSupport 4
- Smarter renderar with automatic template lookup
- Faster and more stable reloader
- Using Moneta for caching
- Cascading mounter support
- New task generator
- Share templates between apps
- Easier CSRF Filtering
- Customizble asset paths
- A whole bunch of bug fixes
All in all a quite impressive release. I’m really happy about the support for Ruby 2.1, which is the Ruby version I’m using for all my active Padrino projects. Sharing templates is a bigger deal than maybe most may think, a typical thing that most developers expect from a framework and should not be complicated.
Better support for different template engines are also quite important. Both from a performance point but is also a good sales point for other developers who does not like ERB. If Slim and Haml is your flavour there is another reason to look at Padrino.
The task generator I think is quite nifty and could be useful for larger and more complex projects where you need to handle different aggregations and cron based rake tasks. Those kind of tasks will now be easier to create. For the rest, all them makes Padrino better and more attractive not to mention all the bug fixes. The Padrino Team has done a really good job and I’m grateful for their contributions and that Padrino feels alive and has a future as a Ruby framework.
What I really miss is a standard way to hook in several data store adapters and be able to create models using different ORMs using the model generator by setting a single flag. Hopefully this will be available in a future release since it is quite common these days to use several different data storage solutions.
Even though Padrino comes with an optional Admin interface that handles users it is still a bit of a pain to handle authentications, users and registrations if you compare with for example Devise for Ruby on Rails. The Padrino Admin is just not flexible enough, it is good for a lot of things, but in reality it does not solve anything.
There are a few good enough solutions using Warden out there, but what is really missing is something like Devise or CanCan for Padrino. I’ve started my own solution which I’m quite happy with and I’ve started to turn it into a Ruby gem which is a total different story and not as easy as it seems. I’m learning quite a lot about RubyGems and hopefully I’ll have a release available this year. I call the gem Doors.
If you are looking for an easy to use Ruby framework then Padrino is definitly for you and with the latest upgrades it has become even more attractive and powerful.