Drupal+ProcessMaker = A Powerful Content Management System with World Class Workflow Automation

 

15.1% of ProcessMaker Open Source Customers are also using Drupal as their CMS of choice.

 We always knew that ProcessMaker played well with Drupal.  There are lots of reasons to use the two solutions together.  Drupal is one of the leading open source PHP CMS, and ProcessMaker is beyond a doubt the leading Workflow and BPM solution built principally on PHP.

However, we never knew how many organizations using ProcessMaker were also using Drupal until we completed a recent survey of our worldwide installed base of thousands of customers.

Drupal was not the #1 CMS being used with ProcessMaker (stay tuned for our survey results in later blog posts).  However, the result was significant.  15.1% of all ProcessMaker users also use Drupal (note that we found many customers using Drupal and WordPress or even Drupal and Joomla so these are apparently not mutually exclusive).

Why Did We Create it?

Based on the obvious interest in Drupal amongst our users, we decided to work with the new ProcessMaker REST API (new in Version 2.8, 2.9, and 3.0) to create an integration.  We think that the Drupal community will enjoy the results (although we are certainly open to criticism and suggestions!).

Hackathon

During a 2 day hackathon I was able to create an inbox within Drupal using the native module framework for Drupal 8.  I developed the following functionality for the module:

Features:

  • Inbox – To access all the ToDo cases assigned to a user
  • Draft – To access all the Draft cases assigned to a user
  • Advanced Search – To find a particular case based on advanced search criteria
  • User Profile Extension – So that each user in drupal can connect to ProcessMaker using their own credentials.
  • Dynamic Form Rendering – Including multi column layout
  • Task Routing
  • Saving Data to ProcessMaker
  • Loading Data from ProcessMaker
  • Connection via password grant_type

AngularJS

Some of you may have seen a similar front end app that I built using AngularJS.

In the AngularJS app, I only had the following functionality:

Features:

  • Basic Inbox Functionality
  • Form Rendering
  • Task Routing
  • Saving Data to ProcessMaker
  • Loading Data from ProcessMaker
  • Connection via authorization_code grant_type

Although the Angular integration was interesting (my humble opinion), it was interesting for different reasons.  Prior to version 2.8 of ProcessMaker, it was very difficult to fully embed ProcessMaker in other apps or use different front end technologies to mold ProcessMaker to your own tastes.  My angular app shows how developers and OEMs can now take their favorite technology and build out ProcessMaker however they want.

Drupal + ProcessMaker = Powerful Workflow Portal

On the other hand, the drupal app is more than just scratching a developer’s itch to use his/her favorite development languages.  Drupal is a business application for developing websites and much more.  Besides just websites, there are developers all around the world developing actual applications using Drupal as a framework. Having ProcessMaker and Drupal integrated means that a developer can now add powerful workflow capabilities to that application.  Also, the Drupal CMS is often used as a portal for lots of businesses, and workflow users often want to start their workflows from the company portal.

The Goal

What I have done with Drupal is just the start. This integration will eventually do so much more.  For that reason I have published all the source code on github here: http://bit.ly/pmdrupal. Feel free to fork it, play around with it, even break it if you feel like it 🙂

My initial goal was to create a functioning example of working with our REST API so that you could either take it forward and extend it or just analyze it to see how to connect with our REST API.  However, I hope that this can continue to progress to really explore the possibilities of using the Drupal framework to develop true enterprise applications that involve complex workflow processes.

It took only a handful of days to develop this module and that was with the learning curve of the new Drupal 8 framework that uses Symfony, Twig and YML configuration files.  I look forward to seeing other ideas on how to take this further.

What’s Next? YOU Decide!

I have built two applications with the REST API. For the next one, I would like to ask YOU what type of application you would like to see built with the REST API?

WordPress? Joomla? Typo3? DojoJS? NodeJS? MeteorJS? EmberJS?

If you are interested in seeing a particular integration with our REST API, please leave a comment below describing the integration that you would like to see next and we may choose one. Please make sure to also include a description of the use case.

About This Author

Customer & Partner Support Manager for Colosa Inc. and ProcessMaker.

  • Ismahar Ismail

    joomla

    • Sultan AL-Tellawi

      I’m using joomla

  • WordPress

  • olleperson66

    I would love to have a rest api for Joomla v 3.4!

  • kynao

    clearly wordpress

  • ethanthekiwi

    We use WordPress for our company intranet. Both WordPress and ProcessMaker are ActiveDirectory integrated, it would be cool if they could authenticate once and use forms and such that way.

  • Miguel Angel Sanchez

    Joomla of course!!!