> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dogebot.net/llms.txt
> Use this file to discover all available pages before exploring further.

# How the builder works

> The board, the blocks, the lines and every button.

Every builder in DogeBot works the same way: the Command Builder, the Event Builder and the WhatsApp flow builder. Learn it once and you can use them all.

## The parts of the builder

| Part | Where | What it does |
| - | - | - |
| **Side bar** | Far left, thin | Buttons that open panels: blocks, Timed Events, Variables, Error Logs, Commands, Templates and Secrets. |
| **Block list** | Left, next to the side bar | All the blocks you can use, in tabs, with a search box. |
| **Board** | Middle | The big dotted area where you place your blocks. |
| **Settings** | Right | When you press a block, its settings open here. |
| **Top bar** | Top | Problems, history, Find a block, Builder Settings and Save. |
| **Replays** | Under the board | Recordings of your command running. See [Replays](/the-builders/replays). |

## The side bar panels

| Panel | What it does |
| - | - |
| **Blocks** | The block list. |
| **Timed Events** | Make alarm clocks that start events. See [Scheduled messages](/build-a-system/scheduled-messages). |
| **Variables** | See your variables and make new ones without leaving the builder. See [Make your first variable](/variables/make-your-first-variable). |
| **Error Logs** | Problems from real runs of this bot. |
| **Commands** | Jump to your other commands or events. |
| **Templates** | Ready-made sets of blocks to start from. |
| **Secrets** | Passwords and keys you can use in blocks. |

The close button hides the open panel so you have more room.

## Blocks come in groups

In the block list the blocks are in tabs:

* **Inputs**: boxes the person fills in when they use a slash command, like picking a member or typing a number. Only **slash commands** have Inputs.
* **Steps**: blocks that **do** something, like send a message, give a role or save a value.
* **Checks**: blocks that **ask a question** and go one way or the other, like "does this person have the Moderator role?".

Right-click commands and the Event Builder only show **Steps** and **Checks**.

## What a block looks like

Every block has a **white icon**, a **name**, a short line about what it does and a small **pill** that tells you what kind of block it is: **Action**, **Condition**, **Event** or **Slash command**.

Blocks can also show a little tag:

* **Heads up**: the builder thinks this block will fail when it runs, for example because a setting is missing. Press it to see why.
* **Error**: this block failed in a real run. It gets a dashed outline. Press it to see what went wrong.

## Placing and connecting blocks

<Steps>
  <Step title="Drag a block in">
    Drag a block from the list and drop it on the board. Or press the round gold **+** button and pick one.
  </Step>

  <Step title="Connect it with a line">
    Blocks have round, hollow **dots**. Drag from the **bottom dot** of one block to the **top dot** of the next. Your bot always follows the lines, from top to bottom.

    You can also press the dashed **+** circle under a block to add the next block already connected.
  </Step>

  <Step title="Remove a line">
    Every line has a small round **×** button. Press it to remove the line.
  </Step>

  <Step title="Edit a block">
    Press a block. A **gold ring** appears around it so you know which one you are editing, and its settings open on the right. Some blocks also let you type straight into the block itself.
  </Step>
</Steps>

## Checks have two ways out

A **Check** block has two ways out: one for when the answer is **yes**, and one for when it is **no** (else). Connect different blocks to each one. For example, after **Compare** "coins 500 or more?":

* **Yes**: "You bought VIP!"
* **No**: "You need 500 coins."

## Some blocks have "worked" and "failed" paths

Many action blocks can also show a **green** path (it worked) and a **red** path (it failed). Each has its own **+**. See [When something goes wrong](/the-builders/when-something-goes-wrong).

## The top bar

| Button | What it does |
| - | - |
| **Problems** | The builder checks your blocks while you work. **No problems** means all is good. If there are problems it shows how many. Press it to see which block to fix. |
| **History** | Undo and redo your changes. |
| **Find a block** | Search the blocks that are already on your board. Great for big commands. |
| **Builder Settings** | Your builder options, like Auto save. See [Builder settings](/the-builders/builder-settings). |
| **Save** | Saves your work. Your bot uses the new version right away. |

**Arrange** lines up all your blocks in neat rows, so your board is tidy.

## Moving around the board

* **Move the board**: drag an empty part of it.
* **Zoom**: use the zoom buttons, or scroll with your mouse.
* **Move a block**: drag it.

## On a phone

On a phone the builder has a slim top bar with back, help, settings, history, test, problems and save. **Test** opens Replays.

## Notes

Add a **Note** block to write reminders for yourself or your team, like "this part gives the daily coins". Notes do nothing in Discord. You can pick a colour and an icon for each note.

## Learn more

* [Buttons and menus](/the-builders/buttons-and-menus)
* [Pop-up forms](/the-builders/pop-up-forms)
* [Loops and waiting](/the-builders/loops-and-waiting)
* [Copy, share and history](/the-builders/copy-share-and-history)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.