DesignMySystem · Interactive prototype

Make architecture trade-offs visible.

A visual canvas for constructing distributed systems and exploring modeled load, latency and failures.

TypeScriptReact FlowWeb WorkersPrisma

Product evidence

See the working surface.

Checkout service · 2,000 req/sRun simulation
CLIENTWeb app2k req/s
SERVICEAPI64 ms
CACHERedis91% hit
DATABASEOrders72% load
148 ms p95 latency1.8% errorsBottleneck API queue

The problem

An architecture diagram shows components, but rarely helps its reader explore what changes under load or failure. This prototype connects a system drawing to an executable model.

Choices in the implementation

  • Represent system components as typed nodes with constrained connections.
  • Run simulation work in a Web Worker, with a main-thread fallback when worker startup fails.
  • Persist the graph and simulation configuration so a design can be revisited.

What exists

  • A React Flow canvas, preset scenarios and saved-design APIs with authentication.
  • Queue, cache and topology models, adjustable request load, and node failure/recovery controls.

The next question

Compare the model with a small instrumented system and test whether users can explain a bottleneck after using the canvas.

Explore the other projects →