Extras.io launched their first Premium Extra called Preview back in November. Aimed at the larger businesses, Preview makes it possible to create new revisions of pages on your website, without immediately publishing them. Now, they're working on the next step: a full, flexible, content approval workflow built right into MODX with a new Premium Extra called Workflow

Workflow extends the features of Preview to add the content approval workflow to your Revisions. At the London MODX Meetup on February 25th this year, Mark Willis from Adido showed off the work for the first time - and we were there!

Mark Willis at the 2015-02-25 MODX Meetup in London, showing Workflow to the public for the first time. Picture by Graeme Leighfield.
Mark Willis at the 2015-02-25 MODX Meetup in London, showing Workflow to the public for the first time. Picture by Graeme Leighfield.

What is Preview?

Before diving into the awesomeness that is Workflow, it probably makes sense to introduce Preview first. Workflow is an extension of Preview, and given Preview is still pretty new, most people probably have not used it yet. 

Preview allows you to create revisions, different versions, of your resources. These use the exact same interface as the regular resource editing panel, so it supports template variables, custom resource types, ContentBlocks and mostly anything you might be using alongside. It's easy to create a new revision, and you can continue editing that revision until it is ready to be published. On the Revisions tab, you can see the revisions that are available for the master resource.

Showing the available Revisions for a particular resource in the Revisions tab. 
Showing the available Revisions for a particular resource in the Revisions tab. 

The real magic happens when previewing revisions in the front-end of your website. It dynamically shows you these revisions on the actual site, and even allows you to view two different revisions side-by-side! As revisions can have different templates, this compare feature is incredibly useful. And by using the bar injected into the top of the screen, you can easily switch between different revisions. 

Side-by-side comparison of two different revisions using the Preview feature.
Side-by-side comparison of two different revisions using the Preview feature.

If you liked the way VersionX allows you to compare versions side-by-side (which, for those unaware, shows all resource fields and the raw content side-by-side), you will love seeing the actual resource output side-by-side with Preview.

Taking a sneak peek at Workflow

Now that we've established Preview is really awesome, let's take a look at what Workflow has to offer. Keep in mind, this is work in progress and not yet available, but you can sign up to be notified when it is available through Extras.io support. Based on the discussion at the London MODX Meetup, there will likely be changes to the interface and some of the functionality before it launches. 

So what does it do?

It basically lets you design a content approval workflow. And with design, we do mean; design. Using the visual workflow builder, you get a starting point (Draft) and an ending point (Published), and in between that you get to draw lines and add actions that are available at that step of the workflow. Here's how that looks in the dev preview:

The Visual Workflow Builder in the upcoming Workflow extra by Extras.io
The Visual Workflow Builder in the upcoming Workflow extra by Extras.io

Is that awesome or what? The resource draft is forced to go through the steps in the designer to reach the published state, which is tied in to user group permissions. It is possible to use plugins to execute actions when the draft moves into a certain state, such as sending email notifications or pinging a team chat tool like HipChat or Slack. 

What's also great, is that you can set up multiple workflows in one site, depending on the context, types of content and more. These are called Rulesets in Workflow, and creating a ruleset looks something like in the screenshot below.

Creating a new Ruleset in Workflow, allowing you to select templates, contexts or resource types on which the Workflow should execute.
Creating a new Ruleset in Workflow, allowing you to select templates, contexts or resource types on which the Workflow should execute.

The available actions at any given time are shown in a new menubutton in the save bar when editing a revision. Depending on the users' permissions and how the workflow steps are defined, the draft can be locked down completely as soon as it is sent to the next state.

When promoting a revision to the next state, the user is asked to provide a message. This will be added to the Audit Log, and can be included in your plugin notifications so your editors or publishers know exactly what to look at. 

Coming to a MODX site near you, soon..

All in all, it is looking very promising. Unfortunately, it is still being developed and will take a bit longer to get ready for use. When it reaches that stage, we might just be adding it to how we build MODX.today in the future to give guest authors a more user friendly way of creating their content, while still ensuring quality posts. 

There is no ETA on Workflow yet, though Mark Willis seemed hopeful it wont be too far out. No word on pricing yet either, though it will be a premium extra, given it's a premium feature that premium clients will love.

Check out Extras.io for more information about Workflow. And don't forget to let us know your thoughts, in the comments below :)