Ready for the Top 20 Ruby on Rails CMS?
This article contains a breakdown of all known (to me) Ruby on Rails content management systems to date. It is revised from its previous version, fixing a few inconsitencies and adding two new content management systems to the list!
It has continually been asked in the "rails" community about the quality of Rails cms systems, and several different groups/individuals have branched off independantly to create a rails cms. Some are trying to make the most ajaxified cms with all the bells and whistles, while others seem to be focussing on feature sets and plugin modules.
People are trying to rapidly deploy applications and with rails as the promised magic potion for doing so, CMS development is on the rise. Before I break down all the CMS I'm aware of in the rails community, I want to say this. I am dissapointed in seeing less cooperation between independent cms projects. The one thing that did brighten my day was seeing that Ajax Scaffold and Streamlined are working together. If more people were making active contributions to these projects, and these project leaders were coordinating their efforts with eachother, a full featured and fleshed out rails cms would come about in an expontentially less amount of time than it is going to take at the current rate.
And now.. drumroll... Here's a breakdown of some of the rails cms advertised as of August, 2006.
Radiant, the minimalistic CMS for Rails
Radiant is a no-fluff content management system designed for small teams. It's similar to Movable Type or Textpattern, but is more than a blogging engine. It's a Web developer's CMS with just enough features to make it worthwhile. We've intentionally left the kitchen sink out!
Radiant CMS Features
- An elegant user interface
- The ability to arrange pages in a hierarchy
- Flexible templating with layouts, snippets, page parts, and a custom tagging language (Radius: http://radius.rubyforge.org)
- Special page-oriented plugins called behaviors
- A simple user management/permissions system
- Support for Markdown and Textile as well as traditional HTML (it's easy to create other filters)
- Operates in two modes: dev and production depending on the URL
- A caching system which expires pages every 5 minutes
- Built using Ruby on Rails (which means that extending Radiant is as easy as any other Rails application)
- Licensed under the MIT-License
- And much more...
Typo is a blogging tool that can be used as a CMS with some minor hacking. It is designed out of the box as a blog that runs on ruby on rails and it even includes some helpful ajax libraries. It's under constant development as well, so give it a chance if you are looking for a very simple cms system with just articles.
Mephisto is another brand of blogware from rails written by technoweenie (that's his name). It seems more accustomed for sites that don't appear like blogs, but actually are! You know.. what are they called again.. websites!
To download mephisto, you just do:
svn co http://svn.techno-weenie.net/projects/mephisto/trunk your_directory
A quick install of mephisto is as follows:
Quick Install 1. Create a database named mephisto (or one of your choosing). 2. Copy config/database.example.yml to config/database.yml 3. Edit database.yml and set your database credentials. 4. Upload the entire mephisto directory to your webserver. 5. Create your log directory MEPHISTO/log 6. Run rake db:bootstrap from a terminal of some sorts 7. Login to your administration at with the username: admin and password: test
Streamlined for Rapid Rails Deployment (cms tool, not a cms)
Streamlined is becoming increasingly powerful as people begin to understand better what it is. It is essentially a framework "ontop of the already existing Rails framework" that assists in rapid deployment of your applications. Here's what the creators have to say about it:
Streamlined is a framework for rapidly developing CRUD applications using Ruby and Rails. With Streamlined, we are trying to accomplish:
- provide the same declarative ease-of-use to the view layer that ActiveRecord provides for the data layer
- automatically manage relationships in the view layer so that users don't have to keep writing the same relationship management code
- replace the default scaffolding of Rails with more robust, useful and meaningful management screens
- provide a meta-framework which allows you to assimilate different Rails plugins and generators
If you already have a database schema, Streamlined's intent is to allow you to create a usable, robust, and above all, customizable administrative interface for it in five minutes or less.
Rubricks - Ajax bells and whistles
Rubricks is probably one of the most feature-enhanced publicly available rails cms I've seen. I played with it extensively and even used it on a project in its early stages. It has since then been continually developed by a team of 6 Japanese developers. The current version as of this post for Rubricks is 0.4.1. It includes english and japanese versions of the system and some of the documentation is in english also.
Rubricks features include:
- RSS Reader
- News reader
- CMS Search System
Ajax Scaffold Generator (cms tool, not a cms)
- Generates a production ready, fully styled, interface for managing models
- Generates valid XHTML and CSS.
- Guaranteed to work on Firefox 1+, IE 6+ and Safari 2+
- Designed to be used as a Rails component so you can easily create an admin console by dropping in multiple scaffolds.
- Released under the MIT License, the same one as Rails itself, so you can use it freely in your commercial applications.
Check out Ajax Scaffold here.
I'm not completely clear on the features available in Eribium because I believe the website is poorly laid out. However, I am aware the author is working on some very interesting modules such as Juggernaut described later in this article. I will say that you should have a look at the Eribium CMS site and see if it fits your needs.
RCMS is so early in its life, I'd almost venture to say, "be careful". That isn't to say it isn't worth trying out. Currently it's a very minimalistic cms with theming capabilities. It's worth a look just to see what they've done so far.
Admin Pages CMS with Tree Tiers
The Admin Pages CMS (if that really is its name) is worth a look but hardly production worthy. It has some concepts that people may want to copy for their own but I really don't see this system up to par as something you could use without considerable work required.
The Spread CMS looks very nice! From the screenshots that is. I couldn't find a downloadable version but that may change in the future. I think this CMS has a ton of potential and I'd love to see more people help them further develop it. It really is designed nicely.
Here is the Spread CMS Trac.
Pimpki - Personal Information Manager
Pimki 1.8 is a PIM (Personal Information Manager) loosely based on Instiki's Wiki technology. This is the place to dump your brain, organise your thoughts and Get Things Done. The ease of use and immediacy of a wiki combined with extended view to slice and dice the data give you a unique power to store, manage and retrieve all loose bit of information in your life.
There are a lot of features added over a regular Wiki, features that only make sense when you view it as a personal application and not so much as a group oriented application. See below for a full list of goodies.
RealApps CMS - A Dead Simple CMS
RealApps is a very simple design for a CMS on Rails. t's implemented as a plugin you can download, which then generates scaffolded code for administering your content. It's designed to be a starter system for small sites, and of course you can build on it as you want. It's also a good place to look if you want to see how generators and plugins are implemented.
CMS Compontent - DateBocks 2.0
CMS Component - ClockingIT
ClockingIT Features include:
- unlimited projects, tasklists and tasks
- milestones and due dates
- time tracking and reports
- project timeline
- multiple user accounts
- ajax and comet interface
Juggernaut - A Rails Plugin (not a cms)
- Push server - written in Ruby.
- Integrated, as a plugin, into Rails.
- Subscribers can subscribe to multiple channels, and broadcasters can broadcast to multiple channels. Channels are sent as a base64 encoded array - from the session.
- Uses Flash 6 - installed on more than 95% of computers.
- Supports all the major browsers (uses fscommand): Firefox 1+, IE 6+ and Safari 2+.
Comatose - CMS Plugin App
Comatose 0.6 is out! Here’s a quick summary of the new stuff:
- ComatoseController has been split into ComatoseController and ComatoseAdminController
- Both controllers extend your ApplicationController
- Configuration via Comatose::Options class
- Liquid is the default text processor
- Support for named routes
- A Getting Started Guide
- Pages now have a created_on field
Conclusion of CMS Breakdown
As you can see, there are a number of ongoing Ruby on Rails CMS projects. Some of them are moving along faster than others, and a few have not even got off the ground yet: Railfrog or become public such as Rubish by Kyle Shank. That doesn't mean they won't however.
One important thing to keep in mind when selecting your rails CMS is if you need a system that is going to be continually developed, or if you simply want their skeleton to build on. Some of these systems are being developed quickly such as Rubricks and Radiant and that is worth considering when you make your choice.
There will always be new CMS components and systems popping up. My final plea after writing this is that the developers working on these systems cooperate with one another and strive to share their goals and vision so that it can benefit the community as a whole and increase the maturation of Ruby on Rails CMS systems into their next generation.