DEV Community

Cover image for I Built an Interactive System Design Playground to Finally Understand Distributed Systems
DevonMobile
DevonMobile

Posted on

I Built an Interactive System Design Playground to Finally Understand Distributed Systems

Most system design resources feel static.

You open a diagram of WhatsApp or Uber architecture and see boxes connected by arrows:

API Gateway → Redis → Kafka → Cassandra

But the hardest part is imagining what actually happens.

How does a request move through the system?

What happens if Redis goes down?

Why was Kafka chosen here instead of RabbitMQ?

How does traffic change during failures?

I always felt like system design was something people memorized rather than understood.

So as a side project, I built Reqflow — an interactive system design playground.

Instead of staring at diagrams, you can watch a request move through a real architecture step by step.

What it does

You can pick architectures like:

WhatsApp
Uber
Kafka
S3
Netflix
Payment Systems
Notification Systems

Then hit play and see a real request animate through the system.

For example, in a WhatsApp flow:

Sender → Gateway → Chat Service → Redis → Cassandra → Kafka → Push Notifications

Every component is clickable.

You can explore:

Why a component exists
What breaks if it fails
Alternative technologies
Tradeoffs

One feature I particularly enjoyed building:

Failure scenarios

You can intentionally break parts of the system.

Kill Redis.

Watch the request path change.

See degraded performance and fallback behavior happen visually.

Because honestly, this is where system design becomes interesting.

Other features
18 reference systems
18 system design concept explainers (CAP theorem, consistent hashing, idempotency, etc.)
Back-of-envelope estimation drills
“Rebuild from memory” mode
Side-by-side architecture comparisons

Still actively improving it.

Would genuinely love feedback from developers on what feels useful, confusing, or missing.

Try it here: getreqflow.com

Top comments (0)