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

# Dashboard vs CLI

> Compare building with the dashboard AI versus the Webstorio CLI.

Webstorio supports two ways to build a site:

|                        | **Dashboard**                                          | **CLI**                                                                                                   |
| ---------------------- | ------------------------------------------------------ | --------------------------------------------------------------------------------------------------------- |
| **Best for**           | No-code / low-code, AI chat + visual editor            | Developers who want local `.tsx`, git, and their own editor or AI agent (Cursor, Claude Code, Codex, etc) |
| **How you edit pages** | AI builder and visual editor in the project            | React modules on your machine, synced with `webstorio push`                                               |
| **Deploy**             | Publish in the dashboard                               | Zero deploy config, `webstorio push` syncs                                                                |
| **Feature schemas**    | Create CMS types, forms, and App Data tables in the UI | JSON under `schemas/`, manage with `webstorio schema`                                                     |
| **Feature pages**      | One-click create-page for CMS / form / store / auth    | `webstorio generate` scaffolds matching local `.tsx` pages and config entries                             |
| **First tutorial**     | [Create your first site](/guides/create-your-site)     | [Your first site with the CLI](/developer/your-first-site)                                                |

## What each approach covers

**Pages and layout**

* **Dashboard:** Build and edit pages in the AI builder and visual editor.
* **CLI:** Edit React modules locally and deploy with `webstorio push`.

**Feature schemas (structure)**

Schemas define the *shape* of CMS content types, Form & Survey forms, and App Data
tables — not the entries, submissions, or rows themselves.

|                | **Dashboard**                                       | **CLI**                                                                  |
| -------------- | --------------------------------------------------- | ------------------------------------------------------------------------ |
| **Where**      | Content, Forms, and App Data screens in the project | `schemas/content`, `schemas/forms`, `schemas/data` (see `schemasDir`)    |
| **How**        | Create and edit types/forms/tables in the UI        | Author JSON files; `webstorio schema pull` / `diff` / `push`             |
| **With pages** | Independent of page publish                         | When `schemasDir` is set, `webstorio push` also upserts schemas by `key` |

**Feature system pages**

Dashboard **create page** actions scaffold CMS list/detail, form, store, and auth
routes from hosted templates. On the CLI, use
[`webstorio generate`](/cli/commands#webstorio-generate) to create equivalent local
`.tsx` pages and register them in config (then `webstorio push`).

Use the dashboard if you prefer a visual editor. Use the CLI if you want schemas
in git next to your pages. You can start in either place — for example
`schema pull` to bring dashboard definitions into the repo, or edit in the UI
after a CLI push.

→ [Feature schemas](/developer/schemas) · [Content & CMS](/guides/content-and-cms) · [Forms](/guides/forms) · [App Data](/guides/app-data)

**Project data (entries and rows)**

CMS entries, form submissions, store products, and App Data **rows** are managed
in the dashboard on either approach (or via [MCP](/developer/connect-mcp) /
the [Client SDK](/api-reference/sdk/overview) where applicable). MCP does **not**
replace either approach for creating or publishing page code.

**Runtime on the live site**

Published pages call [`window.webstorio`](/api-reference/sdk/overview) the same way regardless of how you built them.

## Recommendation

* Prefer the **dashboard** if you will not maintain a local code repo.
* Prefer the **CLI** if you want version control, shared components, local preview, zero deployment configuration, schemas in git, or your own editor / AI agent writing `.tsx` files.
* Use **MCP** on top of either workflow to manage content and other project data from an agent.
