Progressively Decoupling Drupal 7 website using Panels


There is a lot of discussion about progressive decoupled systems at the moment. While most of the discussions revolve around Drupal 8's capabilities in building such systems, it is easy to build a decoupled system driven by Drupal's presentation capabilities in Drupal 7 as well. Panels is one of the most popular modules to allow layout configuration via the Drupal backend, but completely unusable in a decoupled system. RESTful Panels overcomes this limitation by exposing Panels layout and configuration through a RESTful endpoint.

We will cover the following in this session:

  • We will cover RESTful module briefly and write an endpoint to expose Panels data.
  • We will see how data is encoded and returned via the endpoint while allowing further customization.
  • We will use the Panelizer controller to return data from a panelized entity.
  • We will also see how we can write custom panes which return data suitable for a RESTful response instead of HTML typically returned by Panels.

After this session, the audience will be able to build Drupal backends that expose layout configuration and data using RESTful Panels module, which can drive powerful front-end applications. Knowledge of writing RESTful services is preferred but not required.

Session Track

Coding and Development

Experience Level


Drupal Version