# Save bar

<figure><img src="/files/8vVEX4ePzcCZKHn072Cj" alt=""><figcaption></figcaption></figure>

## Overview

Save Bar is always located at the bottom of the screen and stays fixed as you scroll through the page. It appears after a user performs an action (edit a form, tick a checkbox, etc.) from the bottom and should persist until the task is submitted or canceled.

Sticky Save should be used to save or discard in-progress changes. It contains a `Button Group` with a Save button as a primary action and a cancel button.

Sticky save should be used on all forms and is visible when there are unsaved changes.

To limit the user's mental load, we restrict `Save Bar` actions to two `Buttons` : "**Save**" (as a `Primary Button`) and "**Cancel**" (as a `Secondary Button`)**.**

Sometimes, we may want to offer users a third option: "**Save as draft**". As this option isn't prevalent in all of our forms, we decided to introduce a specific pattern with "**Save**" as a Primary Split Button and "**Save as draft**" as a Split option.

## Guidelines <a href="#id-636af2" id="id-636af2"></a>

### **How to use** <a href="#id-546556" id="id-546556"></a>

`Save Bar` behavior is automated by Roma; it will always stick to the bottom of the page and allow the user to scroll down the page.

The Save Bar has been created to be visible enough for users to notice it without disturbing them to perform their actions.

<figure><img src="/files/p0RXerU7HAsfwjw3VW8Y" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
[Learn more on how to use Save Bar in a form, depending on the form mode (creation or edition)](https://design.mirakl.com/~/changes/DpgERwSwrKIthStzL4D6/patterns/forms/creation-and-edition-modes)
{% endhint %}

## Key takeaways <a href="#id-8864e6" id="id-8864e6"></a>

{% hint style="success" %}

* Align Save Bar buttons with page content
* Respect Button content guidelines
  {% endhint %}

{% hint style="danger" %}

* Do not show Save Bar if no actions are required from users
* Do not display more than 2 actions in the Save Bar
  {% endhint %}


---

# 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://design.mirakl.com/design/components/actions/save-bar.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.
