It is about time to say this. I am seriously digging Alfresco and really close to be able to finally use it in a real life project, replacing Liferay’s internal CMS with solution built on top of Alfresco.
So what is the thing with Alfresco?
I’ve been looking at Alfresco on and off for some time ( even years ), but have been thinking that the platform is too complex to be used in regular projects and you would need to invest loads of time before having any clue on how to model your solutions on top of it. Out of the box user interfaces have also left much to be desired.
Naturally there hadn’t been sufficient incentive to really put enough effort into really learning the platform, until now when I was faced with the possibility to either implement certain features on top of either Liferay’s existing features, implement basic CMS backend features from scratch or use Alfresco.
Why Alfresco rocks?
Alfresco is is not just a content management system, but rather a content management framework on top of which you can build your own solution and own user interfaces. And compared to many other solutions available, it has some pretty good APIs to program against to.
As I looked at the foundation API descriptions and code for services, they were totally in line with how I had modelled things in my mind and were a breath of fresh air compared to Liferay.
Just take a look at following links:
ServiceRegistry is an interface to take a look at. It is registry for all the relevant public services.
As maven is the preferred way of managing projects for me, I was happy to see that Alfresco artefacts are also available via maven repository:
… I really think it is funny that it took the experience of staring Liferay eye to eye to finally realize that Alfresco is where I would prefer to do my content development work.