Framework or CMS?

by Rob Chant on October 13, 2008

When I’m describing Renaissance to people, one thing I get back a fair bit (especially from other coders), is, “oh, so is it a CMS or is it a framework?”

I guess it’s kind of both really. It creates a web site, and lets users manage that site. It was a powerful interface which lets a user do pretty much anything to their siviete without writing any code. It does various other web type things.

But it also has a pretty powerful framework behind it… not something I deliberately aimed to create. It more just evolved over time. This framework allows a Renaissance developer (all one of us, currently), to extend its functionality and add new content types incredibly quickly and easily.

For example, a client recently requested a new version of her web site, including a fully searchable property database. Needless to say, Renaissance didn’t have one, but setting it up was pretty simple,

  • create a database table for property (there is functionality to do this from a configuration file, but it’s still not properly finished)
  • set up the content type
    • create an entry in the components table (again, should be automatic, isn’t yet)
    • set up configuration file structure
    • configuration files that control all the back end pages for the content (edit, delete, manage, etcetera)
    • configuration files containing the save rules for the content (more on save rules soon)
    • configuration files containing the views for the content
  • write the PHP class that will actually displays a content item on the site (this inherits from the base front end scribbler class, so there’s not really much that needs to be added)

That’s pretty much it for the content. About half an hour’s work, and it’ll be less once things are more automated.

Now that search. I’d figured we’d use the fuzzy search provided by Whirlwind Match, accessed over an ATOM based web service. Again, pretty simple, and all handled from the interface, no code to write,

  • set up the web service
  • configure my new property content type to synchronise with the web service
  • configure a new search item to use the web service (search items are another content type)
  • set up a search form and link it to my new search item
  • add the search form and a search results page to the site

Presto! Needless to say, bugs were encountered (the ATOM system needed a bit of work), but they were squashed, and there was CSS to write, as there would be for any new web site. But setting that search system up for a new site would literally take a few minutes, and it’s fully configurable (on which fields to search, how to display results, etcetera).

The same client then asked for a simple web based CRM. I had a quick look at intergrating Sugar and got pretty bored, so I whipped up a new ‘contact’ content type and simple management system and linked it to all the various enquiry forms on the web site. Again, not a lot of work. Admittedly, the manager is pretty simple, but there’s easily room to build something more complex onto it when there’s more time.

Anyway, get the idea? What do you think? CMS or framework? Or both?

No related posts.

{ 0 comments… add one now }

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>