Silverstripe and the Sapphire framework

I had heard about the Silverstripe project a few years ago, when I was looking for alternatives to Drupal/Joomla! to build small and medium sized websites. I was looking for a framework that could be easily extended, and with object oriented code, and Silverstripe looked good. However, I decided to just focus on pure frameworks and started working on CakePHP and Zend Framework instead, so Silverstripe slipped out of my mind. Until now.

After an interesting job interview for an agency in London that develops websites on Silverstripe I decided to take a look again at their CMS and the associated framework, Sapphire. While I wasn’t looking the project has really grow and I really like the look of it so far. Some of the things I like so far are the ORM features, giving you great control over the database structure and the templating system.

The ORM system allows your application to define your database, updating and altering it when necessary from within the application. Even if I assume fine tunning will be necessary on a high load application, it makes starting up much quicker and keeps the database and the application in sync without much effort. You need to use a specific syntax to define it, though, which means database design software cannot be used.

The template system is also very flexible, and encourages you to write the logic in the controllers and follow an MVC architecture like cakePHP or Zend. This and the fact that the architecture also encourages you strongly to divide your code in modules makes your code structured and easy to reuse.

However, the problem I’ve found is the lack of technical documentation, at least officially on their site. There’s lots of easy tutorials and shiny presentations with all the features, but so far trying to get a structured documentation such as the Bakery for cakePHP or the Zend Framework one is proving difficult. It may be that I’m looking at the wrong places, or that the fact that they have published their own book (SilverStripe: The Complete Guide to CMS Development (Wiley)) makes helpfiles a low priority. Don’t get me wrong, the CMS features are extremely easy to use and I am sure anybody can be posting content in no time with minimal reading. But I was looking for info about how to develop a site from the ground up, where the CMS functionalities are just a nice extra.

I also would love to hear more about its performance, since so far I’ve only seen people using it for small websites and not fully fledged web applications with heavy load. That makes me wonder if I am better off just using cakePHP and developing the interface myself for this particular project, and leave Silverstripe for content based small sites that I’d build with Wordpress otherwise.

Delicious
 

Comments: 2

Leave a reply »

 
 
 

Hi, thanks for that short review. I’d be really interested in a follow-up if you’ve pursued it further… ;) Agree that I’d welcome more documentation and it seems like a certain amount of the existing docs and tutorials haven’t been updated yet for the latest 2.4 release… To me it feels like it has quite a bit of catching up to get on a par with CodeIgniter or cake PHP on the tutorials and docs side but then they’ve have a head-start and larger communities at this stage.

SilverStripe themselves cite the Democratic Convention site as the best example of handling high traffic volumes (quote from their own site):

From the official press release from the Democratic National Committee: “DemConvention.com received more than 3.2 million visits totaling more than 2.6 billion hits during Convention week. More than 350,000 hours of video were watched by DemConvention.com visitors as the DNC site offered live gavel-to-gavel coverage in High-Definition (HD) in both English and Spanish for the first time in Convention history.”
The site handled the load with flair, not breaking a sweat even during the heaviest load times such as during Barack Obama’s live-streamed acceptance speech.

 
 

well hello there! long time no speaky, hope all is good with you :)

I’ve been using silverstripe for a few weeks now and googled ’silverstripe get stage’ and came across your blog, im very impressed with SS so far but its been a very slow and painful journey – I’ve had to jump onto the #silverstripe channel freenode (IRC) to get alot of questions answered..

apart from that it does alot of great things out the box, but im thinking sooner or later im going to have to bite the bullet and get my head around Drupal

take care
Justen

 
 
Leave a Reply
 
  (will not be published)