A system-design tool that respects your intelligence.
ArchForge exists to make distributed-system design tangible. Most tools stop at boxes and arrows. ArchForge goes further: it simulates real traffic, reasons about your topology as a graph, and writes the document you'd hand to a reviewer — so the diagram becomes a model you can actually test.
Deterministic rules, not AI.
The review engine is built on sixteen explicit, graph-based rules. It computes client-reachability, builds adjacency maps, and finds articulation points to flag single points of failure, exposed databases, missing caches, and scaling risks. The same diagram always produces the same findings — each with an explanation, a suggested fix, and the exact nodes it affects.
There is no model guessing in the loop. That's a deliberate choice: in a tool meant to teach and verify system design, honesty and reproducibility matter more than a confident-sounding paragraph. Every warning is something you can trace back to a rule.
How the simulator actually works.
The load simulator is a real discrete-event engine. A seeded random number generator drives a min-heap event queue of arrivals and departures. Each component is a queueing station with a service-time distribution, a number of parallel servers, a bounded queue, and a failure rate.
Requests route along your edges, wait in queues, get served or dropped under backpressure, and occasionally fail and retry. The engine records per-node and end-to-end latency samples, then reports p50/p95/p99, utilization (ρ = λ / cμ), queue depth, drop rate, and cascading-failure detection. Push traffic past capacity and you'll watch tail latency climb and queues saturate — exactly as queueing theory predicts.
Built on a modern, typed stack.
- Next.js 16
- App Router, Route Handlers, one custom server
- React 19
- UI + the React Flow canvas
- TypeScript
- Strict types across the whole codebase
- Tailwind CSS v4
- CSS-variable design tokens
- React Flow
- Infinite, interactive architecture canvas
- Zustand + zundo
- State management with undo/redo
- Yjs + WebSockets
- CRDT real-time collaboration
- dagre
- Automatic left-to-right graph layout
- Zod
- Validation for storage, import, and APIs
- Vitest
- Unit tests for the engines
Try it — it's open source.
Everything runs in your browser. Read the code, file an issue, or just start designing.