# Layout of a GovCMS page

## Pages, Regions and Blocks overview

**Pages** in GovCMS hold **Regions**. Regions are defined in the theme (in code, in an [info.yaml](https://github.com/govCMS/GovCMS/blob/2.x-develop/govcms.info.yml) file) and cannot be altered via the GovCMS administration backend.

The content is placed into Regions as **Blocks**. Some blocks are created by Content Editors, they are called **content blocks**. Other blocks are created by **modules** or **Views** and provide predefined content listings from the site (e.g. listing of events or publications) or from other systems (e.g. a Twitter block shows Tweets).

The screenshot below shows a page divided up into basic regions of Header, Content, Footer and RHS Sidebar.

![Image of page Regions](/files/-LzEdJEtgll9Ah71Sw19)

The screenshot below represents content blocks placed within regions. The Logo is in the Header region and an Author Profile is in the RHS Sidebar.

![Image of page regions and Content blocks](/files/-LzEdJEuwbtMivbGAgs-)

You may explore the default theme GitHub repository to review the available regions: <https://github.com/govCMS/govcms8\\_uikit\\_starter/blob/8.x-1.x/govcms8\\_uikit\\_starter.info.yml#L8>

## Theme in GovCMS

A **theme** is a set of files that define the visual look and feel of your site. The core software and modules that run on your site determine which *content* (including HTML text and other data stored in the database, uploaded images, and any other asset files) is displayed on the pages of your site. The theme determines the HTML markup and CSS styling that wraps the content.

The default theme shipped with GovCMS 9 are:

* [Olivero](https://git.drupalcode.org/project/drupal/-/tree/9.5.x/core/themes/olivero) - (frontend theme)
* [Claro](https://git.drupalcode.org/project/drupal/-/tree/9.5.x/core/themes/claro) - (admin theme)
* [Gin](https://git.drupalcode.org/project/gin) - (admin theme)

The theme defines what regions are available in your GovCMS site.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://salsa-digital.gitbook.io/govcms-site-builder/unit-1-functional-analysis/layout-of-a-govcms-page.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
