Monday, June 02, 2008

Heads Up With Radiant CMS

Radiant is an open source RubyOnRails based Content Management System, designed for relatively small websites. One of the nice things about radiant is that it the templates themselves are stored in the database like ordinary content, making all interactions with the site once it is deployed through the administration interface.
In radiant, a page can be composed of several named parts. Parts of the interface that is shared among several layouts (like navigation bar, footer, header) can be stored in snippents. Using snippets, layouts and page parts helps the site creators to elegantly build and maintain their website.
Some features that is beyond a CMS, like having a page that sends emails or a form that stores data somewhere, can be obtained through radiant extensions.
let's start a new radiant project:

first you need to install the radiant gem
gem install radiant --include-dependencies

then create a new radiant project specifying the database engine used.
radiant --database mysql mysite

Now you have the project created.
Create a new database and set the database connection paramaters in the database.yml, then bootstrap
rake development db:bootstrap

This will start creating all necessary database tables and relations. then it will ask you for the administrator credentials.
Create the admin user (press enter for defaults).
Name (Administrator):
Username (admin):
Password (radiant):

After creating the admin account you will be asked about the type of database templates to be used.
Select a database template:
1. Empty
2. Simple Blog
3. Styled Blog
[1-3]:

  • The Empty project template creates a project with no initial pages at all. once you start the server and try to open the site, you will be forwarded to the administration login page. You'll need to create all layouts, snippets, pages from scratch
  • The Simple Blog template creates a simple plain text website with blog structure set and two simple posts and with nearly no stile at all.
  • The Styled Blog template creates a project that has the blog part setup like the previous type. but it is more rich with stylesheet and nice display. Of course you will need to override the current initial implementations with you own.

After you created the project. start the server
ruby script/server -e development

Then check the new created website at http://localhost:3000
and check the administration interface at http://localhost:3000/admin

Yo can check the demo at radiant website to see a real working example.

No comments: