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

# Pages

> Use Pages to give a Composed Parable its routes and major destinations, composed from Panes.

# Pages

## Sources

Docs: [Ponder Primer](/ponder/primer) and [Panes](/ponder/parables/pieces/panes)

Web App: Open a Composed Parable, select **Pieces**, and choose a Page from
the unified tree. Home is a real placement Page and remains visible beside the
other Pages, including before additional Pages exist.

A **Page** is a major destination in a Composed Parable. It gives people a
stable place to read, explore, or complete work, and it is composed entirely
of Panes. A Page has code, capped at 4 KiB, and a Perception that lists the
Panes it renders; it holds no data and no SQL of its own. Anything with data
belongs in a Pane.

Every Parable has a Home Page. Additional Pages can sit beneath another Page to
form clear navigation without turning every small region into a destination.

The Pages tree retains Home and the existing Page hierarchy. Direct links keep
their stable Page identities. Above the content,
the breadcrumb shows the path to the selected Piece, followed by a separate
description band. The context selectors share the available width and wrap
onto another row when their labels need more room.

## Build a Page

<Steps>
  <Step title="Name the destination">
    Use a short label that tells a reader what they will accomplish there.
  </Step>

  <Step title="Describe its job">
    Explain the outcome before adding controls or implementation detail.
  </Step>

  <Step title="Declare its Panes">
    Add each Pane the Page renders to its Perception. The Page's code may
    import only the Panes it declares, the foundation, and the sandbox runtime
    packages; an undeclared import is refused at save.
  </Step>

  <Step title="Preview the complete route">
    Check navigation, empty states, keyboard use, theme, and the supported
    viewport sizes. A Page that declares no Pane yet shows an "add a Pane"
    placeholder and can still be saved.
  </Step>

  <Step title="Review the Patch">
    A Page that still declares no Pane, or declares a Pane that no longer
    exists, is reported as a finding when the change is published.
  </Step>
</Steps>

## Keep the hierarchy useful

Use a child Page when the content deserves its own route and title. Use a Pane
when it belongs inside the current Page. Use a Package when several related
Panes should move and be reviewed together.

If a Page appears in the tree but cannot render, keep the current Patch, read
the visible preview error, and repair the Page or one of the Panes it
declares. Do not delete and recreate it merely to clear an error; that would
create a new identity and can break links to the existing Page.

While editing, the document drawer opens when you enter a Page. Preview failures
leave its header and editors available. Drag the drawer's top border to resize
it, and use **Auto** or **XS** through **XL** in the panel footer to size the preview.

## Reference

Generated Workspace API reference for this Piece:

* [List the Pages in the Parable directory](/protocols/reference/web-api/parable-directory-workspace-parable-directory-pages)
* [Edit a Piece in Personal mode](/protocols/reference/web-api/parable-authoring-save-workspace-parable-primary)
* [Edit a Piece in Publishing mode](/protocols/reference/web-api/parable-authoring-save-workspace-parable-proposal)
* [Read a Parable's contents](/protocols/reference/web-api/parable-authoring-workspace-parable-primary-package)
