> For the complete documentation index, see [llms.txt](https://docs.maker.co/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.maker.co/maker-greatstore/apps/how-apps-work.md).

# How apps work

Apps are custom interactive experiences the assistant renders in the conversation instead of answering in plain text — a comparison, a catalogue grid, a product card.

<figure><img src="/files/SKZy2WZ3e1uDIe680HYb" alt="Apps — each card is a live component with its state"><figcaption><p>Apps — each card is a live component with its state</p></figcaption></figure>

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><h4><i class="fa-grid-2" style="color:$primary;">:grid-2:</i></h4></td><td><h4>App library</h4></td><td>Pre-installed apps every store starts with.</td><td><a href="/pages/LyjgZmg3xd2CJPJq7Zaw">/pages/LyjgZmg3xd2CJPJq7Zaw</a></td></tr><tr><td><h4><i class="fa-hammer" style="color:$primary;">:hammer:</i></h4></td><td><h4>Building an app</h4></td><td>Create your own with the Greatstore MCP and a coding agent.</td><td><a href="/pages/x84J3jdgA2RANWP4yzC8">/pages/x84J3jdgA2RANWP4yzC8</a></td></tr></tbody></table>

## Two kinds of app

{% columns %}
{% column width="50%" %}
**Inline apps** render inside the chat flow — a product list appears right in the conversation as the assistant answers.
{% endcolumn %}

{% column width="50%" %}
**Full-screen apps** take over the panel for richer interactions — a side-by-side product comparison is the canonical example.
{% endcolumn %}
{% endcolumns %}

## States

| State         | Meaning                                      |
| ------------- | -------------------------------------------- |
| `LIVE`        | Published — the assistant can render it now. |
| `DRAFT`       | Created but never published.                 |
| `UNPUBLISHED` | Was live, has been taken down.               |

You can publish and unpublish from the Apps screen, or by asking the same coding agent that built the app (via the MCP).

## The assistant decides when to use them

You don't wire apps to triggers. Once an app is live, the assistant chooses to render it when the conversation calls for it — ask it to compare two products and it reaches for the comparison app on its own.

{% hint style="warning" %}
That autonomy is why restraint matters: too many apps, or apps whose purposes overlap, confuse the assistant about which one to call. Keep the set small, distinct, and genuinely useful to shoppers.
{% endhint %}

## The Apps screen

Each app appears as a card with its state. Click a card for a live preview rendered the way a shopper would see it. **Refresh** re-reads the published set — use it after your agent deploys a change.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.maker.co/maker-greatstore/apps/how-apps-work.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
