Radiant (software)
Developer(s) | John W. Long, Sean Cribbs, Jim Gay |
---|---|
Initial release | June 26, 2006 |
Stable release | |
Development status | Dormant |
Operating system | Cross-platform |
Platform | Ruby on Rails |
Type | Content management system |
License | MIT |
Website | radiantcms.org |
Radiant is a free software content management system written in Ruby created and designed by John W. Long as a Ruby on Rails web application. While suitable for the non-technical user, it also provides elements for more advanced users.
Radiant has a lightweight core library with "extensions" providing additional customised functionality. Because extensions do not modify the core, upgrading is simplified; With over 200 extensions in the extension registry[2] it can be adapted for a range of uses including membership management.[3] All the content is stored inside a database. It is possible to use MySQL, PostgreSQL or SQLite. Radiant depends, like every Ruby on Rails application, on the installed adapters for the database.
It is distributed via a separate download or installable with RubyGems.
Two PHP ports of Radiant CMS are available as Frog CMS and Wolf CMS.
Design
Radiant projects are based on 3 elements: Pages, Snippets and Layouts.[4]
Pages: Pages hold the body content and can include multiple page parts such as a sidebar. Radiant allows arrangement of pages according to any hierarchy. For example, if Radiant is used as a blog, all blog entries are Pages inside the Radiant system, arranged to reflect the actual structure of the content. For the non-technical user WYSIWYG Page editing is available as an extension[5]
Snippets: Snippets are essentially just content that can be reused everywhere in the project and make page creation easier.
Layouts: Layouts define the general look of a Page much like a template. Upon Page creation, a Layout can be selected for this Page to be inserted in.
Radius Template Language
Inside a Page, Layout or Snippet, Radiant offers a special macro language, called Radius, that allows a user to include content from other pages, iterate over page children, and display content conditionally.
Radius tags are XML-like tags that start with "r:".
Here is an example of Radius tags inside page layout:
<html>
<head><r:title /></head>
<body>
<r:snippet name="header"/>
<r:children:each limit="2">
<r:content />
<r:if_content part="sidebar">
<div class="sidebar">
<r:content part="sidebar" />
</div>
</r:if_content>
</r:children:each>
<r:snippet name="footer" />
</body>
</html>
Extensions
Radiant includes by default 2 extensions.
See also
References
External links
- Official Radiant website
- GitHub project
- Radiant CMS, Managing Web Sites on Rails An independent review by Frederic Brunel, a software architect and technology enthusiast.
- ruby-forum.com Radiant thread