Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions apps/dashboard/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
node_modules/
dist/
.vite/
coverage/
*.tsbuildinfo
.vite-dev.*.log
tmp-screenshots/
tmp-chrome-profile/
77 changes: 77 additions & 0 deletions apps/dashboard/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# FlowMemory Dashboard V0

Local operator/explorer app for inspecting FlowMemory V0 fixture output. It is intentionally fixture-backed and does not claim production live data, wallet support, token pricing, or hosted deployment.

## Run Locally

From this directory:

```powershell
npm install
npm run dev
```

Default Vite URL:

```text
http://127.0.0.1:5173/
```

Useful checks:

```powershell
npm run typecheck
npm test
npm run build
```

## Data Boundary

The canonical dashboard fixture lives at:

```text
fixtures/dashboard/flowmemory-dashboard-v0.json
```

The app loads its runtime copy from:

```text
apps/dashboard/public/data/flowmemory-dashboard-v0.json
```

The `dev` and `build` scripts run `npm run sync:fixtures`, which copies the canonical fixture into the Vite public data folder before the app starts or builds.

Future generated local outputs should land under the fixture boundary first:

```text
fixtures/dashboard/generated/indexer-state.json
fixtures/dashboard/generated/verifier-reports.json
fixtures/dashboard/generated/devnet-state.json
fixtures/dashboard/generated/hardware-heartbeats.json
```

The dashboard schema can then be updated to merge those generated files into `flowmemory-dashboard-v0.json` or replace the loader with a local API once that boundary exists.

## Current Views

- Overview
- FlowPulse stream
- Rootfields
- Work lanes and receipts
- Verifier reports
- Devnet blocks
- Hardware nodes
- Alerts
- Raw JSON inspector

Every displayed record carries source subsystem, fixture/local origin, chain context, ID/hash, status, and last-updated metadata when available.

## Status Vocabulary

Dashboard V0 visually distinguishes:

```text
observed, pending, finalized, verified, unresolved, invalid, unsupported, reorged, offline, stale
```

These are app-facing display states for local fixture inspection. They should stay aligned with indexer and verifier terminology as those packages mature.
16 changes: 16 additions & 0 deletions apps/dashboard/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta
name="description"
content="Local fixture-backed FlowMemory operator dashboard for V0 inspection."
/>
<title>FlowMemory Dashboard V0</title>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/main.tsx"></script>
</body>
</html>
Loading
Loading