What Is the Best Ruby on Rails CMS?

Captain’s log, stardate d39.y37/AB

You will probably land on this page looking for an answer to a question we ourselves had some months ago.

You want to choose a solid foundation for your next project, which requires a CMS, and you have very compelling reasons to do it in Ruby on Rails, but you don’t know the existing options all too well.

Luckily for you, we have been testing the most popular CMS solutions in the market that have been built with Ruby on Rails for you.

First things first: What is a CMS?

In this blog post, I am going to analyse several Ruby on Rails CMS options. CMS stands for Content Management System, which, according to the CMS Wikipedia article:

A content management system (CMS) is a computer application that supports the creation and modification of digital content using a simple interface to abstract away low-level details unless required, usually supporting multiple users working in a collaborative environment.

Content Management Systems are therefore good options when you have got multiple users that will manage your web platform, or else they are not tech-savvy enough to update it without a graphical user interface.

In fact, there are lots of different CMS out there, one of the most popular being Wordpress, for almost every programming language there is. Wordpress, Locomotive, Drupal, OpenCMS are just a few of them, but you can find more options on this site: DMOZ.

Ruby on Rails Content Management Systems

Since we are a development consultancy that specialises in Ruby on Rails projects, we have had to study a good share of the available options for our clients. Although most of the times we build 100% tailored apps, we sometimes have to use prepackaged solutions like e-commerce (SpreeCommerce), static site generators (Jekyll, Middleman) and CMS (we usually choose Locomotive).

In this blog entry, I am going to talk about the following CMSs: Refinery, BrowserCMS, Locomotive, Mexican Comfortable Sofa and RadiantCMS.

Refinery

One of the first options we evaluated is Refinery CMS, a 100% free and open source CMS. Refinery uses all the power of Ruby on Rails and it’s compatible with its latest versions, as they claim on their website, but the truth is that the project hasn’t been updated very actively, lately.

This is how Refinery CMS looks from the inside

PROS:

  • 100% free and open source.
  • Multi-language support in over 30 languages.
  • Although not as active as between 2010 and 2012, the project is still evolving through its Refinery Contributors.
  • Simple and easy to extend.
  • Tree-structured navigation with draft capability.
  • Offers compatibility with ERB templating system.
  • Role-based permissions for extensions.

CONS:

  • Perhaps too simple for our taste.
  • The graphical user interface is too simple and your clients won’t like it.
  • There’s only one field for content per page.
  • Too few Refinery CMS extensions available (Devise, TinyMCE, Blog, ElasticSearch…)
  • No folder organisation on the assets management section.

Summary: If you’re looking for a very basic CMS that is free and easy to extend, with an active community, Refinery is your choice.

URL: Refinery CMS

Github: Refinery Github Repository

Demo: Refinery Demo

BrowserCMS

BrowserCMS is a discontinued project that has not been updated for over two years. Browser runs on Rails 3.2 and one of its main advantages is the flexible & extendable content API. As it is built on top of Rails, it’s also easy to extend — if you’re a Rails developer.

This is how Browser CMS looks when editing a page. Courtesy of Github

PROS:

  • 100% free and open source.
  • Easy to extend if you’re a Rails developer.
  • Tree-structured navigation with draft capability.
  • Supports Rails 4, although the last official update says 3.2, and requires Ruby version > 1.9.2.
  • Portlets (snippets of code) as content type.
  • Templating system.
  • Task-assignation workflows for internal coordination.

CONS:

  • Outdated. It’s a dead project.
  • The look & feel is old as well and needs lots of upgrading to nowadays’ standards.
  • No active community that’s maintaining the project.
  • No compatibility with extensions.
  • No folder organisation on the assets management section.

Summary: We do not recommend using deprecated and abandoned software when there are alternatives on the market.

URL: Browser CMS

Github: Browser Github Repository

The Best: Locomotive

No contest, Locomotive is the best CMS we have found and it has become our CMS of choice when our clients require a CMS-based solution.

Locomotive is an active project developed by an actual company, which has got a freemium model. In the free version, you download the software and install & configure it yourself, while in the paid version, all of that is managed by their platform, akin to the Wordpress model.

This is how Browser CMS looks when editing a page. Courtesy of Github

PROS:

  • Free version allows you to install & run your own version.
  • Paid version takes care of hosting & deploys for you.
  • Supports the last versions of Ruby & Rails.
  • 100% Open-source.
  • Works on non-relational databases.
  • Multi-language and multi-site support.
  • Easy to extend if you’re a Rails developer.
  • Really good inline content editing and live preview.
  • Tree-structured navigation with draft capability.
  • Supports Markdown, SASS & HAML/Liquid.
  • Supports creation of customised content types with YAML.
  • Used by big clients such as Up Global, BBC or Disney.
  • Good-looking graphical user interface.
  • Active community maintaining the project.

CONS:

  • No folder organisation on the assets management section.
  • Some features have very basic configuration options only.
  • Only works on non-relational databases.

Summary: We think this is the best Rails CMS out there and use it extensively. It has been hard to find its weaknesses, and it is really flexible enough to extend it to your heart’s content. The only drawback is that you’re forced to use non-relational databases, but it’s well worth it.

URL: Locomotive CMS

Github: Locomotive Github Repository

Demo: Locomotive Demo

Comfortable Mexican Sofa

Another popular CMS for the Rails community is the funny-named Comfortable Mexican Sofa. As a matter of fact, more than a commercial product, this one sprouts from the very community and only has its Github repository as a reference.

Comfortable Mexican Sofa is a tiny lightweight CMS that you can install in a matter of minutes as a gem into your existing project and customise it extensively to meet your needs.

Editing a layout in Comfortable Mexican Sofa. Courtesy of Github

PROS:

  • 100% free and open source.
  • Easy to extend if you’re a Rails developer.
  • Supports the last versions of Ruby & Rails.
  • Easier to integrate with your own project than other CMS alternatives, because of its minimalism.
  • Your app can access the CMS’ content through helpers.
  • Multi-language and multi-site support.
  • Tree-structured navigation with draft capability.
  • Supports for templates through a scripting language similar to Liquid.
  • Decently well-known solution for CMS.
  • Version control for layouts, pages & code snippets.
  • Offers some extensions (contact form, user management, etc.)

CONS:

  • No folder organisation on the assets management section.
  • There’s only one field for content per page.
  • Some features have very basic configuration options only.
  • The project hasn’t been updated for months.

Summary: Comfortable Mexican Sofa is a great alternative to Locomotive if you need a barebones & micro-CMS with basic functionality. If Locomotive is too much then this is the most comfortable option (see what I did there?).

Github: Comfortable Mexican Sofa Github Repository

Radiant CMS

Last, but not least, Radiant CMS is another valid alternative to the bigger CMS options mentioned before. However, we feel this is really limiting and too simple for our taste. Further, the look & feel of the platform requires a severe upgrade to nowadays’ UX standards.

This is how you create a page on Radiant CMS

PROS:

  • 100% free and open source.
  • Supports the last versions of Ruby & Rails.
  • Multi-language support.
  • Tree-structured navigation with draft capability.
  • Multiple fields for content per page.
  • Asset management based on asset categories.
  • Offers several extensions (Markdown, Archiving, code snippets, etc.)
  • Supports for templates (using Radius) and code snippets.

CONS:

  • As stated on their website, the admin panel looks better in Safari and Firefox only.
  • The project hasn’t been updated for months.
  • User permissions through roles are too simple.
  • The look & feel is old as well and needs lots of upgrading to nowadays’ standards.

Summary: Although Radiant might be great for some really small projects, it is far from its competitors Comfortable Mexican Sofa and Locomotive and we, therefore, do not recommend it.

URL: Radiant CMS

Github: Radiant Github Repository

Demo: Radiant Demo

Conclusion

There might be other CMS options out there, but we have analysed some of the most used solutions according to different criteria: usability, look & feel, support for extensions, pricing or whether it’s an actively maintained project, among others. For a more detailed and broader study, check Ruby Toolbox, where they categorise most of the CMS options out there according to interesting criteria such as the last commit, number of contributors or number of release, among others.

We have chosen Locomotive CMS as our standard CMS solution. The fact that it is actively maintained by a company gives the project more stability and thus earns more trust from our clients as a result. Even more so, when we present them with the companies that are currently using Locomotive as their CMS of choice.

Locomotive is definitely the only solution we would use to compete against Wordpress, should any of our clients want to move away from the PHP-based techstack.

For a more lightweight project, we could probably use Mexican Comfortable Sofa, as an alternative, integrated into our customised apps to ensure the best user experience for our client.

Do you use other content management systems we haven’t analysed? Feel free to share them with us using the comments section below and we’ll be happy to try them.

We believe that some projects require a strong foundation based on an already existing CMS solution in order not to reinvent the wheel. If you’re interested in building a new project with any of the solutions described above, contact us for a free estimate of your idea!


Originally published at marsbased.com on September 21, 2016.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.