Skip to content



Extends: @apostrophecms/piece-type ℹ️

This module populates the object with content or settings that are utilized site-wide. Like any core module, it comes with some built-in features, and we can add additional configuration by creating a modules/@apostrophecms/global/index.js file in our project. Our project-specific configuration will merge gracefully with the defaults that come with the module. New fields are added and grouped identically to any widget or pieces module. The data from these fields is available to templates as


@apostrophe/global is a piece type that only ever has one piece.


deferWidgetLoadingBooleanIf set to true, any widget module with the option deferred: true will not be loaded until the end of loading the global doc.


If set to true, the deferWidgetLoading option reduces the number of queries required when loading the global doc. Any widget with the option deferred: true used on the page will not be loaded until the entire global doc is loaded.


module.exports = {
 options: {
   deferWidgetLoading: true
 fields: {
   add: {
     githubUrl: {
       type: 'url',
       label: 'Organization GitHub url'
     footerMissionStatement: {
       type: 'area',
       label: 'Footer mission statement',
       options: {
         widgets: {
           '@apostrophecms/rich-text': {}
 group: {
   basics: {
     label: 'Basics',
     fields: ['githubUrl', 'footerMissionStatement']