SilverStripe 3.0 Alpha 1 - first impressions

SilverStripe is the CMS that is responsible for putting a lot of bread on my table. Needless to say I was excited to check out the first alpha release of version 3 that was released last week. I have been following the designs and the preview release for a while. So I really wanted to know if this new version would be a real alpha, or maybe even an early beta.

Installation

SilverStripe 3.0 alpha installation screen.

The installation process is really similar to previous versions. I guess future versions may feature a design closer to the design of the new interface.

One thing I noticed was the warning for PHP versions. The installer told me that PHP 5.3 was strongly recommended. I don't know if 5.3 will become a requirement in the final version.

First impression

SilverStripe Edit page.

The admin sure looks a lot slicker and stays close to the mockups that were released earlier. The first thing you notice is that the main navigation tabs have moved from the top to the left. This is great for sites with lots of ModelAdmins and extra tabs. Things sometimes got a bit crowded in that top bar.

Managing content

When you enter the admin area, you are greeted with the new edit tab, showing the home page. At the moment there is no way to switch to another page from here.

On Twitter, I heard that there are (luckily) plans to bring back the page tree on the edit tab. Something more like this design:

 

AilverStripe edit screen with site tree

In the meantime, things are a bit akward, and you have to go via the Pages tab to switch to another page.

 

SilverStripe pages screen.

Speaking of that pages tab: that is a great improvement over what we have now. In previous versions, it sometimes was difficult to edit your content on sites with hundreds or thousands of pages.

The pages sitetree was getting really cramped on the left and has now been moved to the right. I really like the fact that drag and drop is the default selection. Another unnecessary step removed. An improvement that would be nice to have would be modifier keys (shift and command) for Multi-selection, like how it works on Gmail.

The Pages tab is really changing into a more specific Model Admin. I imagine big sites will probably use List View (not yet implemented in this alpha) a lot more:

 

SilverStripe list view.

Once that is added, it will be have a very flexible interface for large sites, while keeping all the hierarchy goodness from Site Tree.

 

SilverStripe Model Admin

The basics of Model Admin also seem to be functional, but it's still very rough. As with some other parts of the alpha release, at the moment it's a bit of a mix up of the old and new CMS.

Editing content

silverStripe edit screen

When you start editing a page, you'll notice that the meta-tabs (Content, Settings and History) have also moved over to the side. This again frees up extra space for edit tabs you might add to a Page Type.

Opening a preview of the page is now done through the button on the bottom right. You don't specify which state (draft or published) of the page you want to see. This is something you can choose when you are in the preview.

 

SilverStripe preview screen

In future versions, the side-by-side view will be implemented for larger screens:

 

SilverStripe side by side preview screen

Under the hood

Besides the interface improvements, a lot of work has been done under the hood. The ORM and the JavaScript have been completely rewritten.

Fieldtypes

There are also a few new field types that come with this new version. Most anxiously awaited is probably GridField. This field type will be replacing the Complex Table Field. It will even replace Uncle Cheese's DataObject Manager, as he said on Twitter.

There is not much documentation on it yet, but I got the demo from the wiki working:

 

SilverStripe GridField example

Another nice field type is FieldList, a search drop down you can see in the pages tab. You can limit the values in the dropdown by typing a value in the search field:

 

SilverStripe FieldList example.

These field types will obviously also be available for your own page types, modules or front end work.

Modules

I tried to install a few modules I use on a regular basis. As it won't be supported anymore, it came as no surprise to see that the DataObject Manager didn't work at all. This is quite a big concern for upgrading 2.x, though. As it's unlikely that there will be an automagic conversion to the new GridField in your sites.

Uncle Cheese's Lang Editor didn't work either. I could install it and open it in the admin, but it just gave me a blank edit field.

SilverStripe is really flexible right out of the box. That is one of the reasons you don't see a huge plugin market for it (like you have for Expression Engine or WordPress, for example). There are a few very usefull plugins, though. It does worry me a bit, that plugins seem to be going to need serious rewrites to function in SilverStripe 3. I hope to proven wrong here. And I hope SilverStripe is considering a strategy to make upgrades (of sites and modules) as painless as possible.

Framework

As of now, you can also download an alpha standalone version of the SilverStripe framework (formerly known as Sapphire). SilverStripe runs on this framework. It was already possible to work in Sapphire while completely ignoring the CMS.

Now both have been decoupled, which makes it even easier to build non-CMS apps. I think a good comparison is Expression Engine (CMS), which is built on top of CodeIgniter (open source framework) and is maintained by the same company. As a developer you know how to work with the framework and you can choose to use the CMS on a per project basis.

I sure hope SilverStripe will go the extra mile and make the user guide as good as the one CodeIgniter has. That is a major selling point for people who start using that framework.

Future

Obviously, this alpha version is really an alpha version and not an early beta. It shows a lot of promise and already has a lot of improvements. To move SilverStripe further along, another hackfest has been anounced. I hope this will help to keep the beta version on schedule (probably somewhere by the end of the 2011).

As far as I know a real stable version is expected somewhere in early 2012.

Post your comment

Comments

  • Great post. For anyone else looking to do comparative study between versions 2 & 3 see here; http://silverstripe.me/usability/

    (there is also a usable version of ss3 available)

    Posted by Matt Clegg, 06/12/2011 6:48pm (2 years ago)

  • Just to be clear: that screenshot comes from SilverStripe's own designs on GitHub: https://github.com/silverstripe/silverstripe-design

    From what I've heard, something like that will make it to the final version.

    Posted by Stijn De Lathouwer, 15/11/2011 6:50am (2 years ago)

  • I have used the new Alpha 1 and found the layout okay but graphics to be stunning!
    I agree that I won't upgrade unless the page tree is on the left of the editor.
    It should look exactly like your diagram. Switching via Pages tab will NOT work.
    I personally found it ultra slow (maybe due to Alpha release). Approximately x30 slower than current version 2.4.6
    In all versions of Silverstripe I have struggled to be able to duplicate a whole page including content, metadata, etc.
    Duplicating a page at present requires creating a new page then saving, going to the other page, copying data, going back to new page, pasting, saving and repeating the process until all completed. It's a nightmare! In most cases I need the same layout and formatting. Metadata is always the same and only a few words change.
    Another problem I encountered was the html editor didn't appear until you click the save button.
    I am mainly looking forward to the new version 3, due to the comments ability to be used multiple times on the BlogHolder.ss

    Posted by Josh Ede, 15/11/2011 3:08am (2 years ago)

  • Great write up. You've really taken it for a test drive. Personally I really love the new UI and looking forward to using the new ORM.

    Posted by Frank, 10/11/2011 1:09am (2 years ago)

RSS feed for comments on this page | RSS feed for all comments