TxPulse cookbook

Ship fast without guessing

This page is your operator manual with good taste. It follows the real code paths and helps you go from blank terminal to live monitor without drama.

Quick command stack

cd backend && cargo run

cd frontend && yarn dev

curl 127.0.0.1:3000/health

Quickstart

From zero to live stream in four moves

Move 1

Run backend and keep it alive.

Move 2

Run frontend and open the monitor app.

Move 3

Connect wallet and choose any target address.

Move 4

Watch feed, latency trend, and metrics update live.

Architecture

Browser to backend to Helius

Frontend streams from Rust backend only. Backend handles logsSubscribe and getTransaction enrichment. This keeps browser clean and secrets out of client code.

/monitor/:address/health/admin/metrics

Realtime Pipeline

How events become useful signal

  1. Client opens monitor websocket for chosen address.
  2. Backend validates pubkey and starts per client stream loop.
  3. Backend sends bootstrap recent events so UI is not empty.
  4. Live logs trigger signature enrichment with retries.
  5. Backend pushes transaction envelopes and rolling metrics.

Payload Contracts

What the socket sends

type: NEW_TRANSACTION
fields: signature, status, timestamp, computeUnitsConsumed,
priorityFeeMicrolamports, confirmationLatencyMs, slot

type: METRICS_UPDATE
fields: successRatePct, avgConfirmationMs, currentSlotLag, txPerMinute

Operations

Everyday local checklist

Health

curl 127.0.0.1:3000/health

Frontend

cd frontend && yarn lint

Backend

cd backend && cargo check

Debug Playbook

When things go weird

Connecting forever: backend is down or target address is invalid.

Duplicate feed rows: check dedupe behavior in socket pipeline.

No admin metrics: verify backend CORS and endpoint availability.

Funny latency values: wait for fresh live samples after bootstrap.