> For the complete documentation index, see [llms.txt](https://frinn.gitbook.io/custom-machinery-1.21/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://frinn.gitbook.io/custom-machinery-1.21/creating-custom-machines/machine-gui.md).

# Machine GUI

The Machine GUI is the main tool to interact with the machine in-world. It will be used to display the current status of the machine as well as the different components and their contents.

A machine GUI is not mandatory, if you don't want it just don't put it in the machine json.

A Machine GUI is composed of various GUI Elements, there is no limit of how many elements you can put.

The Machine GUI and it's Elements must be defined as such in the machine json :

```json5
"gui": [
    {
        //Element 1
    },
    {
        //Element 2
    }
]
```

{% hint style="info" %}
By default the machine gui has no background, to change that and/or change the size of the gui see the [background element](/custom-machinery-1.21/creating-custom-machines/machine-gui/background-element.md) wiki page.
{% endhint %}

### GUI Elements

There are currently 17 available GUI elements :&#x20;

{% content-ref url="/pages/rUPHgsYcZT57KxHlNVQG" %}
[Background element](/custom-machinery-1.21/creating-custom-machines/machine-gui/background-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/Iqr9B4YgbpwKIUlInMh6" %}
[Bar element](/custom-machinery-1.21/creating-custom-machines/machine-gui/bar-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/JURzyjSkj2h1SWq4msyb" %}
[Button element](/custom-machinery-1.21/creating-custom-machines/machine-gui/button-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/Th1xdiOT00mCDgbRF5l3" %}
[Config element](/custom-machinery-1.21/creating-custom-machines/machine-gui/config-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/sDjbuBVEw9ShqnykcrEt" %}
[Dump element](/custom-machinery-1.21/creating-custom-machines/machine-gui/dump-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/fGmpxeIXbbyaNvO27y40" %}
[Empty element](/custom-machinery-1.21/creating-custom-machines/machine-gui/empty-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/uHeB6I5i3xWcZmjSobRT" %}
[Energy element](/custom-machinery-1.21/creating-custom-machines/machine-gui/energy-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/wuJmIsWQbxVjjmeYY2Xv" %}
[Experience element](/custom-machinery-1.21/creating-custom-machines/machine-gui/experience-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/dGhjQ9gg6vNIzrZ6qYSk" %}
[Fluid element](/custom-machinery-1.21/creating-custom-machines/machine-gui/fluid-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/RKGaEXJIgLsGevQpyRQt" %}
[Fuel element](/custom-machinery-1.21/creating-custom-machines/machine-gui/fuel-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/HC0MKoYadefiqj9SRHDg" %}
[Player inventory element](/custom-machinery-1.21/creating-custom-machines/machine-gui/player-inventory-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/dUW7PdOPn7rrMIgxOhBJ" %}
[Progress bar element](/custom-machinery-1.21/creating-custom-machines/machine-gui/progress-bar-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/e0XfVzlBiQzqvErLqE1B" %}
[Reset element](/custom-machinery-1.21/creating-custom-machines/machine-gui/reset-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/6up9ppjGo7oGed9k6O7x" %}
[Split element](/custom-machinery-1.21/creating-custom-machines/machine-gui/split-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/lYGruA2LpIDm2BpI3Fs2" %}
[Slot element](/custom-machinery-1.21/creating-custom-machines/machine-gui/slot-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/eeNcFg7Htb8iZAgYmlk4" %}
[Status element](/custom-machinery-1.21/creating-custom-machines/machine-gui/status-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/rDQLBVHAjkTbpzDvn6it" %}
[Text element](/custom-machinery-1.21/creating-custom-machines/machine-gui/text-element.md)
{% endcontent-ref %}

{% content-ref url="/pages/YmsFonQswqxyyENquX7m" %}
[Texture element](/custom-machinery-1.21/creating-custom-machines/machine-gui/texture-element.md)
{% endcontent-ref %}
