> For the complete documentation index, see [llms.txt](https://docs.mburger.cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mburger.cloud/api-docs-1/introduction/structure.md).

# Structure

Every Mburger project data model is composed of 3 main entities:

* **Blocks**: a block is composed of *elements* and defines the feature data model within the project. Each block represents a specific feature defining its structure.
* **Elements**: they are the basic elements with which to build the data model, forming a *block* structure. An element can be a text field, an image field, an address field and many others.
* **Sections**: represents the data itself. A *section* belongs to a *block* inheriting its structure. A *block* can contain one or more *sections*.

### A Simple Sample

A simple example can be building a News feature. First create a new *block* called News and define its structure using 3 *elements*:

* a *text element*: the title of the news
* an *image element*: an image associated with to the news
* a *datetime element*: the date of the news

Defined the News *block* structure, we can add one or more *sections*. Each section is a news with a title, image and a datetime.

{% hint style="info" %}
A block and its structure can only be created from the web dashboard (only **admin** and **developers** roles). Once a block is created, you can use APIs to create/update/delete sections.
{% endhint %}
