Setup
-
Create a Synkro instance
The dashboard handler needs a running
Synkroinstance so it can query event metadata and metrics.import { Synkro } from "@synkro/core";const synkro = await Synkro.start({transport: "redis",connectionUrl: "redis://localhost:6379",// ... events and workflows}); -
Mount the dashboard handler
Import
createDashboardHandlerand wire it into your HTTP framework of choice.
Framework examples
import express from "express";import { createDashboardHandler } from "@synkro/ui";
const app = express();
app.use("/synkro", createDashboardHandler(synkro, { basePath: "/synkro" }));
app.listen(3000);import http from "node:http";import { createDashboardHandler } from "@synkro/ui";
const server = http.createServer(createDashboardHandler(synkro));
server.listen(3000);import Fastify from "fastify";import { createDashboardHandler } from "@synkro/ui";
const app = Fastify();const handler = createDashboardHandler(synkro, { basePath: "/synkro" });
app.get("/synkro/*", (req, reply) => handler(req.raw, reply.raw));
app.listen({ port: 3000 });Once the server is running, open http://localhost:3000/synkro in your browser to access the dashboard.