Headless content and headless commerce are gaining momentum at a rapid pace, more than I originally thought it would, to be frank. Technologies like GraphQL have begun to push the rendering responsibilities back to the client, ultimately minimizing bandwidth and server load.
We at CoreMedia use IntelliJ IDEA for our primary development tool in-house, it is very similar to Eclipse in many ways so if you are an Eclipse person the transition should be easy. There is GraphQL support in the IDEA IDE, you also have browser playgrounds like GraphiQL, and of course code generators like graphql-codegen.
Because our content management system is based on object-oriented data models, the underlying schema for something like GraphQL is almost a completely natural fit. It is as if OO design really pays off! Something scholars have argued about for many years as to the value of it. A simple example to understand is a CMArticle object that contains a CMPicture object, this object hierarchy is well defined and easily consumed by applications that want a pure headless content architecture.
You might be asking at this point, so what Bob, what is “headless plus” still? Be patient, I’m getting there!
In the old days of “headless”, where JSON and XML provided the data from multiple systems, you had to make multiple requests to those systems to create the full experience. Ie. eCommerce Service and CMS server.
This is where GraphQL solves the multiple requests and data processing problem through a technique called “schema stitching“ ; it combines subschemas into a single response. These subschemas can be either local to the server, or running on a remote server. They can even be services offered by 3rd parties, allowing us to connect to external data and create mashups (link). In the end, this gives the client a single JSON response (eliminating multiple calls to the server):
The really cool part is in the video below Andreas and Frauke not only explain all of this very nicely but also show how the CoreMedia Studio can be extended to integrate your own headless client into it. Giving the author a sort of WYSIWYG editing experience!
Follow-up blog post: Can you do this with your headless PWA?
Our co-founder and Distinguished Engineer Andreas Gawecki and Frauke Pantekoek explain the CoreMedia Headless PLUS concept – why it’s a lot more than just a Headless API and how it benefits both developers and marketers at the same time: