slideshare quotation-marks triangle book file-text2 file-picture file-music file-play file-video location calendar search wrench cogs stats-dots hammer2 menu download2 question cross enter google-plus facebook instagram twitter medium linkedin drupal GitHub quotes-close

Leveraging Drupal distributions to keep costs down

Woman giving a presentation with a large screen of statistics projected behind her.

For some years now the ONS have been operating a discussion forum and community platform for users and producers of official statistics, somewhere to share ideas and knowledge. When they approached us they had settled on Discourse as their product of choice to replace their previous system, and they wanted someone with existing Discourse hosting experience.

We have plenty of experience with Discourse. In fact, enough not to want to recommend it too strongly! We were frank and honest with the ONS team. We explained that while Discourse is OK, self-hosting it is limited if you use the "container" approach - the only supported way to host Discourse yourself. You can try to host it in a more robust way on more traditional infrastructure, but it is a complex application so that is rather challenging. Otherwise you end up purchasing Discourse's own hosting, which the ONS did not want to do.

So we helped them explore their options instead. Sticking close to Discourse, we first explored an open source PHP project called Flarum. If what you're looking for is all the features of Discourse, but far easier to host and maintain, Flarum is a great product. It runs on the classic "LAMP" stack, like Drupal and other Symfony based products, and adopts accepted best practice for scaling infrastructure. The ONS team were certainly impressed, however we weren't finished with the options...

Being Drupal specialists, as well as Linux server specialists, we recommended they take a look at Drupal, most specifically a distribution called Open Social. We set up a free demo of Open Social and walked them through the features and, although it wasn't what they initially thought they wanted, the possibilities and power of Drupal were too compelling. Coupled to the advantage of working with us - we are both a development agency and a fully fledged support and hosting company - they decided to go with Drupal.

The build

Because Open Social is a distribution, a ready-made set of Drupal modules and configurations we could freely download and use as a starting point, we could just download it and install it in the first instance. But of course, they wanted some extra things that Open Social doesn't do out of the box, and they also wanted it to have their branding. Our job became bridging the gap between "core" Open Social and the product the ONS needed.

To that end we:

  • applied their branding to the system;
  • set up advanced search features, leveraging Apache Solr in the back-end;
  • configured real-time virus scanning on file upload;
  • integrated with the open source traffic analytics product, Matomo;
  • checked the whole platform for accessibility standards; and
  • carried out a lot of small tweaks to user experience and journeys.

And of course we contributed, creating issues for our accessibility findings (example), as well as other bugs (example) to help improve Open Social out of the box for everyone.

And here is the finished product, an Open Social / Drupal powered community forum.

Hosting a community

While it's not the only hosting we do, Drupal is our bread and butter, so we are very well placed to provide stable and performant hosting for an application like this. But because we are PHP and Linux specialists, we are also able to host Matomo for them.

Matomo is a PHP-based analytics platform, fairly similar to Google Analytics, except that you can self-host it and own your data. This is particularly important if you have data sovereignty constraints, whether driven by policy or law or both. In any case, owning your own analytics data is certainly preferable to giving it to somebody else!

We also host and maintain the Java-based Apache Solr system which powers their powerful search feature, supporting the use of boolean operators (like AND and OR) as well as wildcard searches out of the box.

As ever, we take care of everything, commissioning the service, carrying out FinOps reports, best practice checks, Linux upgrades, network security, service reviews, 24/7 cover, everything you'd expect from a high-quality hosting provider.

Supporting the ONS team

We don't stop there either. The team at the ONS had no Drupal experience until they met us, so we have an ongoing arrangement with them to be on hand to answer any questions and help them manage and improve their new community website. We also take care of all the Drupal updates that come through, to Open Social and any extra modules we installed, as well as Drupal core.

Let's start our project together


Contact us

Find out how to get more for your money with Drupal Distributions

At Code Enigma we spend a lot of time looking into ways to leverage work already carried out in the public domain to deliver for our clients, delivering quality while keeping budgets reasonable. A major part of our work in this space is working with Drupal Distributions. Find out more about the distributions we support here.

Creative, flexible and open-minded open source experts, we like to help organisations find the best solution for them. This case study demonstrates, we hope, that we are able to think outside of the box and provide creativity through consultation for a better outcome. If you have a project that you'd like us to look at, please don't hesitate to get in touch.