Skip to content

Dashboard

The Dashboard is a Vite + React SPA (web/). It is an operator console for projects, versions, and data you already declared in wrangler — not a place to create a Worker. Write the app first: Write a Worker.

API boundary

All Dashboard traffic goes to cellpd on port :8790 (VITE_CELLP_API_URL and related VITE_CELLP_* in web/.env.example). It does not call celld listen ports (8792+), offshoot, or object storage directly. Storage browsers and binding actions are proxied through the REST API. See Architecture at a glance.

Run it

bash
./dev/scripts/up.sh          # API must be up
pnpm install && pnpm --filter cellp-dashboard dev

Open http://127.0.0.1:5190. Point it at your API with VITE_CELLP_* (see web/.env.example). Auth is the admin token. Run from the repository root after pnpm install (workspace package cellp-dashboard).

For the full click-path from deploy to promote, see Operator journey.

What you will find

AreaYou can
ProjectsList / create projects
OverviewProd pointer, version counts, operator checklist, Inspect entry
InspectPer-project fleet, runtime routes, prod bindings snapshot, attention list
Deployments / VersionsStatus, preview URL, parent, pin, archive, wake, promote
StorageBindings hub for a version
D1 browserTables, rows, SQL
KVNamespaces and keys
QueuesPeek, pause, resume, redrive, purge
WorkflowsInstance list (read-only)
SettingsPer-version Worker env overrides
PlatformGlobal metrics, deep health, runtime routes (filter by project)

R2 is visible on the bindings list. There is no object browser in the Dashboard. Use the Worker binding or the celld operator CLI (celld r2 bulk put) for write-only imports.

What you will not find

  • Login, members, roles — no accounts
  • Git commit browser — git is metadata on the version
  • Live wrangler tail — see Observability
  • Pause / resume Workflows — list only

The Dashboard only calls the :8790 API; it never talks to celld or S3 directly (see API boundary).

Production note

Serve web/dist behind the same admin token story as the API. The Dashboard must not be exposed to the public internet without your own SSO/proxy in front — cellp will not do that for you.

Self-hosted Workers control plane. Not affiliated with Cloudflare or Vercel.