PelicanCMS is the bespoke Content Management System I wrote for Bird & Co Creative Design. Despite utilising more open source packages now, It still forms the basis of at least 50% of the sites produced by Bird & C0 due to the ease of adding bespoke functionality.

The CMS utilises a Model View Controller pattern and the framework provides a large base of functionality on which the team of developers can rapidly add new features to. The system is very memory efficient, has static html caching, intrusion detection software, a very flexible permissions system, and a large number of SEO enhancements built in.

The system has had a large number of bespoke applications built on top of it including e-commerce sites, a car leasing quoting system, recruitment and foster carer application systems, and has been used for sites with extremely complicated menu requirements.

It has been integrated with many external software systems and open source packages such as phpBB, zencart, Agresso CRM, Microsoft Active Directory, Bespoke CRM systems through XML web services, and has been used as a templating engine for third party web applications.

Users find the CMS very easy to use since it has been designed as a publishing tool rather than a site configuration tool.

PelicanCMS is running a large number of highly trafficked sites and due to it’s efficiency and multi level caching abilities performs considerably better speed wise than CMS’ such as WordPress.

Content Management

A fine grained permission system only allows different user groups to exactly the pages they need to perform their task. This has been used to control access to confidential information such as job applications, confidential questions to HR and financial details of customers.

The system tightly integrates CkEditor for text editing but also has a very flexible media uploader.


The custom template system relies on the idea of cascading template classes, where a base template is made progressively more specific for the individual pages by providing sections in templates and overriding them as a need arises.


PelicanCMS makes use of APC for opcode and in memory caching, and also renders pages as static content that can be served straight from Apache or a reverse proxy such as Varnish.