Render API

Drupal 8's Render API roughly consists of two parts:

  1. The render pipeline — which is format-agnostic (HTML, JSON, anything)
  2. Render arrays, which are a representation of a HTML page. They allow nesting (like HTML) and altering (necessary for Drupal's flexibility)

This guide provides detailed information about both.

Cacheability of render arrays

Short version in the API documentation: Render API overview: Caching

Bubbleable metadata

The parent page explains cacheability in general. This looks in detail at how render arrays bubble cacheability.


Drupal 8's Render API automatically creates placeholders of highly dynamic parts of a page, to have the best possible cacheability (i.e. the

Render arrays

"Render Arrays" or "Renderable Arrays" are the building blocks of a Drupal page. A render array is an associative array which conforms to

The Drupal 8 render pipeline

or: how Drupal renders pages

Guide maintainers