Today I began development on a in-house content management system (dubbed Hush CMS), a Ruby on Rails plugin to extend a rails application with CMS functionality (both static [pages] and dynamic [news, blog posts]) as unobtrusively as possible to the application.

So far I’ve got a GitHub Repository setup with some initial code in. At the moment Hush can generate migrations for it’s required entities, and hook into ApplicationController to handle and serve out pages from the database, as well as a custom method for use in config/routes.rb to designate what routes the CMS pages should respond to.

I won’t bother writing up a how-to to get it going for now, bare instructions are in the README. The only thing missing in the repository to view a page is the page view itself, which by default should be a template in global/page. The content of my global/page currently looks like this (html.erb)

<%= hush_cms_breadcrumbs @hush_cms_page %>

<h2><%= @hush_cms_page.title %></h2>
<p><%= @hush_cms_page.content %></p>