There is a very good discussion going on the Castle Project Users group. It has to do with building a CMS with MonoRail and/or ActiveRecord.I have just recently completed building a CMS that I am working at the school district. You can see it at http://www.flaglerschools.com. The portal is pretty complex and is very strongly coupled to K-12 education. Basically it has some of the following features:
- ActiveDirectory Authentication/Authorization
- Each Teacher in the district can create a website
- Schools/Departments can also maintain their websites in the same manner as teachers
- Role management system to allow multiple users to manage one School/Department website
- Blogs/Podcasts support for teachers
- District/School/Department News blogs for showing items relevant to that area of the website
The main goal of this CMS was to be able to focus the mass amounts of information into the district page. Being a school district also brings with it challenges as far as being able to showcase everything that is going on within the school district.In the mentioned thread, goodwill makes a good point that a good tool starts out to solve a problem and then is refactored back to a framework and I think that is the case here. The k-12 portal solves a problem and now with some refining, can be factored back to a higher level framework to be able to plugin to more scenarios easily. Whether it can be refactored to the point of a general CMS is another questions because when development was first started, it’s goal was to provide a CMS for a school district and not a general portal.
I believe this is where it becomes more difficult to be able to create a good CMS. Making a good framework for a CMS is difficult work. Take a look at Umbraco or Mambo. These are two examples of really well developed CMS’s. They have a large following and are open source. Also remember that they have been around for awhile, and as time has progressed they have become easier to use and setup. The only problem with these CMS’s is that once you start to drive down into details it becomes more difficult to tailor to requirements. You could always add the “modules” yourself and voila!
The tricky part is developing a CMS that can adapt well to that change. To be able to make a pluggable framework where you can add new modules the framework needs to be pretty flexible. I haven’t seen alot of CMS’s that have done this well. Maybe a MonoRail framework will be different.Bottom line is, it is time for MonoRail to join the CMS party. I hope that someone starts developing an Open Source one. I would gladly put some time in and contribute some code.