Best Ruby on Rails Content Management Systems (CMS)
- 240925 views
- 10 min
- Dec 14, 2016
Images, blog posts, articles on static pages, music, and videos – none of this content will manage itself. But thankfully, we have handy Ruby on Rails Content Management Systems for handling all of this content on our Rails-based websites.
Using a ready Content Management System (CMS) saves time, as you don’t need to develop a custom solution from scratch. Whether you create a personal or corporate blog, a news website, or an ecommerce store with the Ruby on Rails framework, you can integrate a Rails CMS in your application.
The only problem is choosing the right CMS for the job: which CMS should you pick for your Rails app? We’ll take a look at seven popular Rails CMSs to help you figure out which is best for you. In this short comparison article we'll review each Ruby on Rails content management system to familiarize with their advantages, disadvantages, and even their respective technology stack.
What Are the Top Ruby on Rails CMSs?
Refinery CMS has long occupied the top spot among Ruby on Rails CMSs thanks to its advanced functionality. Refinery boasts a long list of extensions that provide many features – from Elasticsearch support to contact forms, calendars, and image galleries. Speaking of images, Refinery even has a built-in image editor, although its functionality is really basic:
We often use Refinery in our projects, especially when building ecommerce websites. If you want to implement content management functionality in your Spree-based ecommerce website, Refinery is the way to go. Since Refinery is just a Rails engine, we can band it together with any Rails application.
In short, Refinery CMS is the safest choice among Rails CMSs as it’s simple to implement.
Notable features: built-in multi-language support; multiple extensions; support for Amazon S3 cloud storage.
Latest version: 3.0
- Ruby 2.0+
- Ruby on Rails 4.2–5.0
- SQL database (SQLite, MySQL, or PostgreSQL)
- ImageMagick (for image editing)
- Dragonfly (for image editing)
Locomotive CMS is the only hosted solution out of all the Rails CMSs we review in this article. You can use Locomotive to create a personal or corporate blog in a matter of minutes. So, basically, Locomotive is a blog engine.
We’ll have to use a special command line interface called Wagon to create a Locomotive-based website. Also, it’s impossible to change the look and feel of your blog directly in the admin panel. With Locomotive, you first need to develop the website and add content types locally, and only after that can you push changes to the production site and manage all the content on your website.
Notable features: real-time editing; hosting (from $19 to $199 per month); great documentation.
Latest version: 3.1.1
- MongoDB for database
- Ruby 2.2+
- Ruby on Rails 4.2
- Wagon command line interface
Camaleon CMS is another top Rails-based Content Management System that lets you update any content on your website. On top of the standard functionality – publishing blog posts, uploading images, and providing an admin panel – Camaleon allows you to create and manage groups of content. In other words, with Camaleon you can categorize all the content on your website.
You can easily customize the look and feel of websites built with Camaleon CMS using pre-built themes, widgets, and even customizable menus. Camaleon CMS also allows you to define multiple types of users – editors, administrators, publishers, etc. – and fine-tune their permissions. The admin panel is available not only in English, but also in Spanish. And you can publish content in English, French, Italian, and German.
With Camaleon, you can furnish each blog post with an image, add tags, apply categories to posts, and turn comments on and off. The HTML editor – the most advanced of all CMSs we’ve reviewed in this article – is bundled with all necessary functionality you might need to work with texts. Another advanced feature of Camaleon CMS is contact forms: you can drag and drop a button or field to a built-in contact form and even adjust the HTML for each form directly in the admin panel.
Camaleon is a solid CMS solution you’ll enjoy using.
Notable features: themes and plugins store; demo CMS; advanced contact forms.
Latest version: 2.3.6
- Rails 4.1–5.0
- SQL database (MySQL 5+, SQlite, or PostgreSQL)
- Ruby 1.9.3+
Radiant CMS isn’t the most apt comparison to the Content Management Systems we’ve mentioned so far. Radiant doesn’t boast a sleek interface or the fullest functionality available out of the box. At the same time, though Radiant won’t win awards for visual appeal, its interface is very straightforward. With only four tabs (and several sub-tabs), Radiant allows you to rapidly navigate and find necessary content.
Notable features: intelligent page caching; support for HTML, Textile, and Markdown markup languages.
Latest version: 1.1.3
- Ruby on Rails
Comfortable Mexican Sofa
ComfortableMexicanSofa – or simply Sofa – isn’t just another Rails CMS engine (albeit with an unusual title). Sofa uses different tools than other Rails Content Management Systems. For instance, Sofa is equipped with a CodeMirror text editor. You have to manually change HTML layouts, which isn’t very simple as you’ll have to learn many custom tags created specifically for this CMS.
Sofa also uses the I18n gem for multilanguage support. You can develop two or more websites – and mirror them – with the same layout structure. And Sofa automatically updates layouts for all websites. Once you change a template for one website, its mirrored version gets the same update. This is indeed convenient!
ComfortableMexicanSofa backs up each layout and snippet you create. If you’re unsatisfied with how a new layout looks, you only need to access the revision history to roll back your changes. And you can even turn off this function (but we’re not sure why you would).
The bottom line: Sofa’s approach to content management is very close to that of Radiant. ComfortableMexicanSofa is designed for small web development teams who know how to handle HTML and can quickly learn a new template language.
Notable features: support for Ruby on Rails 4 and 5; support for mirrored websites with a single installation; support for Twitter Bootstrap, CodeMirror (a browser-based code editor), and Redactor (a text editor).
Latest version: 1.12.9
- Ruby 2.2.2
- Ruby on Rails 4.0–5.0
- SQLite 3
Alchemy is more a ready CMS builder than a complete CMS solution. You’ll have to put in a lot of effort to set up Alchemy CMS to your liking, but web developers will definitely like this Rails CMS for its well-written documentation. Take a look at the description of the Alchemy Contact Us form, for example.
What makes Alchemy a unique Rails CMS is its approach to managing content. According to its website, Alchemy CMS prevents content managers from working with (and eventually breaking) HTML layouts. Content managers can only access content – images and texts – not layouts, whereas only developers are able to change layouts and styles. This approach of dividing responsibilities guarantees that your content looks consistent and won’t be occasionally broken.
We’d like to point one key feature of Alchemy CMS – the TinyMCE Richtext Editor. This is one of the most popular text editors, used by many CMSs, and is easy to use.
Notable features: support for multiple domains; flexible templates.
Latest version: 3.4.1
- TinyMCE text editor
- Ruby 2.0+
- Ruby on Rails 4.1
- MySQL, SQlite, or PostgreSQL
Spina CMS is a promising Content Management System that’s being aggressively developed. It provides a likable interface for managing user types and permissions, adding posts with images, multilingual support, and managing SEO-related metadata for each article. You can also adjust the structure of your content using a drag-and-drop interface.
Spina is actually a very simple Rails-based CMS, and we can’t say that Spina introduces anything really special. In fact, it provides only basic functionalities. More specifically, it lacks many features an HTML editor should have. Spina won’t let you manage multiple websites in the same admin panel either.
But this isn’t to say that Spina is bad. Actually, Spina CMS has some small but important features that make it distinct. For instance, you can add a redirect URL for your article, which is highly appreciated by SEO managers.
Notable features: some SEO tricks that aren’t available in other CMSs; support for the latest Ruby and Ruby on Rails versions.
Latest version: 0.11
- Ruby 2.3+
- Ruby on Rails 5+
- Trix HTML editor
The Best Ruby on Rails CMS for Commercial Use
We’ve reviewed seven Ruby on Rails CMS engines, any of which you can integrate into your existing Rails application. You can use any of these Rails CMSs as a standalone application as well. The technology stack for all the CMSs is also quite similar; for example, you can use any SQL database for Rails-based CMSs listed this article.
If you need a Ruby on Rails CMS for commercial use, you can confidently choose among Refinery, Locomotive, or Camaleon. Use Refinery with a Spree-based ecommerce store to manage product descriptions. Or use Locomotive to deploy your blog, as Locomotive CMS is the only hosted solution we’ve reviewed. Finally, try Camaleon if you’re looking for a Rails CMS with a polished exterior and a plethora of features.
Other Rails CMSs aren’t as well suited for developing a highly advanced project (although you might pay attention to Alchemy CMS, which is an intermediate option). At first glance, it seems that Alchemy was designed for web developers; but Alchemy greatly simplifies content editing for content managers. And it’s also possible to integrate Alchemy with Spree Commerce. Last but not least, we want to mention Spina CMS, which may well gain a solid market share when it provides more functionality in the future.
No matter what kind of Rails CMS you choose, you’ll have to develop an interface for it. You’ll have to deploy your project and support it. Camaleon, Locomotive, and Refinery CMSs are all safe choices for supported and highly-advanced Content Management Systems.
Subscribe via email and know it all first!