> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.hyjal.cloud/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.hyjal.cloud/_mcp/server.

# Use the Board

> How to work on the Board: pan and zoom the viewport, draw a mount edge, deploy from the canvas, place docs and tables as canvas items, and read the Inspector.

This article describes how to operate the **Board**: the visual canvas in the
Console. For what the Board models and why edges are configuration, read the
concept page, [The Board](/platform/the-board). This page covers the gestures:
moving around the canvas, wiring Resources, deploying, and reading the panels.

## Nodes, edges, and the viewport

The Board renders one Project as a graph.

* A **node** is a [Resource](/platform/projects-and-resources). Each node
  carries live badges: its status and the `sha256:` [digest](/platform/architecture)
  it is serving.
* An **edge** is a relationship: a [mount](/platform/routing-and-urls) (a
  front end forwarding a path prefix to a backend) or an allowlist grant (one
  Resource permitted to call another). The arrow points in the direction of
  the call.

The **viewport** is the visible region of the canvas. Scroll to pan; use the
zoom controls or a trackpad pinch to zoom. Node positions persist per Project,
so the layout you arrange is the layout every member sees.

## Draw a mount edge

Drawing an edge is not annotation. It is configuration. Draw an edge between
two Resources and you configure the relationship it represents.

1. Hover a node until its connection handle appears.
2. Drag from the source node (`web`) to the target node (`api`).
3. Set the path prefix on the new edge, for example `/api/*`.

The gesture creates a mount: requests to
`web--acme.hyjal.cloud/api/orders` now forward to `api` over in-process
dispatch: same-origin, no CORS setup, requests traced end to end. This is the
same wiring as the `mounts` line in [`hyjal.toml`](/deploy/hyjal-toml). Because
the edge also expresses the call relationship, `api` stays `public = false`
while still serving those paths.

To remove the relationship, select the edge and delete it. The change is
reflected in the manifest view and takes effect on the next deploy of the
affected Resources.

## Deploy from the Board

You do not need the CLI to add a Resource. The **Deploy Resource** action
uploads or builds a Resource directly from the canvas. When the route flips,
the new node appears with its status and digest badges; from there you draw its
edges and open its workspace.

`hyjal deploy` produces the same nodes and edges. The Board and the manifest
describe one Project. Neither is authoritative over the other.

## Docs and tables as canvas items

The Board holds more than Resource nodes. You can place two other kinds of item
on the canvas:

* **Docs**: notes pinned to the Board that travel with the Project. Use them
  to annotate a subsystem or record a decision next to the Resources it
  concerns.
* **Tables**: a [Hyjal Table](/data/hyjal-tables) placed as a canvas item,
  showing the table alongside the Resources that read and write it. Opening it
  takes you to the [Tables view](/get-started/console/tables-view).

Canvas items are positioned like nodes and persist with the Board layout.

## The Inspector interplay

Clicking a node opens the [Inspector](/get-started/console/inspector): the
identity panel for that Resource: its name, endpoint, status, served digest,
tags, and relations. The Inspector answers "what is this Resource".

For working on the Resource (logs, metrics, configuration, data), use the
Resource workspace in the bottom tab, described in
[Workspace tabs](/get-started/console/workspace-tabs). Selecting a node updates
both: the Inspector shows its identity, the bottom tab opens its workspace.

## A worked example

The `acme` Project shows two nodes: `web` (`public = true`, a
[static front end](/app-types/static-sites)) and `api` (`public = false`, a
[Go service](/languages/go)). Drag an edge from `web` to `api`, set `/api/*`,
and the mount is live. When you later
[roll back](/deploy/rollbacks) `api`, its digest badge flips to the restored
`sha256:` and the Activity tab records the change. The Board always shows what
is live.

## Next steps

* The concept behind the canvas: [The Board](/platform/the-board)
* The identity panel in depth: [The Inspector](/get-started/console/inspector)
* How mounts route requests: [Routing and URLs](/platform/routing-and-urls)