March 22, 2019
In a recent post we talked about how we published an update to the NHS DoOD mobile application – a digital resource for organisation development (OD) within the health care sector, delivered by NHS Employers.
We first developed the DoOD mobile app back in 2014. But five years is a long time in the world of technology, even more so in the ever-changing landscape of mobile applications and device hardware.
We were early adopters of PhoneGap – a framework that facilitates the use of open web technologies to build mobile apps across multiple platforms – and used its rich array of features to develop the first versions of the DoOD app.
All content displayed within the app was stored inside the app codebase itself. The upside to this was that the app could be used without a mobile data connection, but the downside was that any content updates would need to be conducted by a developer publishing an app update via the relevant app stores. This was time consuming and costly.
At the time of initial development the project budget didn’t stretch to including a content management system (CMS) so that the app content could easily be updated. However, the last few years has seen a dramatic increase in the adoption and popularity of headless and decoupled content management solutions. So when NHS Employers approached us regarding some updates to the app, it seemed the perfect opportunity to see how we could link these technologies and provide a better all-round experience.
A headless CMS is a content management system that features a back-end only. A traditional web-based CMS (think WordPress, Drupal, etc.) would feature both a back-end (where content is edited and managed) and a front-end (where content is output and displayed as HTML). Hence the term “headless”, the view (or head) part of the CMS has been removed, or chopped off you could say!
As a more direct comparison, a traditional CMS delivers three core functions:
A headless CMS still provides the first two. But rather than displaying data, instead it offers an API for developers to access the data and display it wherever or however they wish.
This approach fits perfectly with the range of digital platforms that are on offer today. Your data can be stored (and managed) in a headless CMS, and then be made available for publication on a website, mobile application or any other digital platform available now or in the future.
This approach is also referred to as a decoupled CMS, with the term decoupled used to signify the decoupling of the front-end from the back-end. A headless CMS is actually a subset of decoupled content management. A decoupled CMS can still offer methods and functions for displaying content on a front-end view, whereas a headless CMS adopts a front-end agnostic approach.
One of the biggest and well-known players in the headless CMS market is Contentful. We’re big fans too and have used it on a number of digital projects over the past few years, often in combination with static site generators like Jekyll. Contentful offers both an easy-to-use editing experience for authoring content, as well as a fantastic API for developers to get stuck in to. The Contentful API presents data for consumption in a data format known as JSON.
Alongside PhoneGap, the DoOD app also makes use of Sencha Touch, a front-end user interface library specifically built for the mobile web. Both of these technologies make extensive use of JSON as a mechanism for data transfer, so connecting the app to Contentful was a relatively simple process.
With the app updated and pulling data from Contentful, NHS Employers are able to update areas of content within the app as often as required with no technical input. Data is pulled from Contentful in to the app and stored in a local cache, this allows the app to be used later even when there is no data connection available. Each time the app is launched a call is made to Contentful to check for new content.
Since relaunching the DoOD application we’ve also undertaken updates to another NHS mobile application that links to Contentful. If you’d like to learn more about how we can work with a headless CMS for your project then get in touch.