Skip to content

Repository files navigation

System Design Visualizer Logo

System Design Visualizer

The ultimate interactive tool to learn, practice, and ace System Design Interviews.

Release License React TypeScript

View Live Demo · Report Bug · Request Feature


🌟 Why this tool?

System design interviews are notoriously difficult. Most candidates fail because they don't understand the trade-offs or can't visualize the architecture under different constraints (DAU, latency, read/write ratios).

System Design Visualizer solves this by providing an interactive learning environment where you can dynamically build, test, and justify your architectural decisions.

✨ Features

  • 🏗️ Scenario Builder: Generate intelligent architectures based on user-defined constraints (DAU, consistency, workloads).
  • 🧠 Interview Mode Simulator: A 4-phase mock interview (Requirements, High-Level Design, Deep Dive, Trade-offs) complete with an auto-grading Report Card.
  • 📚 14 Core Concepts & Case Studies: Learn the fundamentals (Caching, Load Balancing) and explore real-world architectures (Netflix, Spotify, Dropbox).
  • 🌍 Community Gallery: Browse, upvote, and remix architectures submitted by other engineers.
  • 📸 Export & Share: Export your architectures to High-Res PNG/SVG or share them via a unique URL.
  • Lightning Fast: Built on Vite, React, React Flow, and Zustand. No backend required!

🚀 Quick Start (Local Development)

To get a local copy up and running follow these simple example steps.

Prerequisites

  • Node.js (v18 or higher)
  • npm or yarn

Installation

  1. Clone the repo ```sh git clone https://github.com/your-username/system-design-visualizer.git ```
  2. Install NPM packages ```sh cd system-design-visualizer npm install ```
  3. Start the development server ```sh npm run dev ```
  4. Open your browser and navigate to `http://localhost:5173\`

🛠️ Tech Stack

  • Frontend Framework: React 18
  • Build Tool: Vite
  • Language: TypeScript
  • Styling: Tailwind CSS
  • Diagramming: React Flow
  • Icons: Lucide React
  • SEO & Routing: React Router v6, React Helmet Async

🤝 Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

Please see the CONTRIBUTING.md for details on how to add new concepts, case studies, or features.

📝 License

Distributed under the MIT License. See `LICENSE` for more information.

🌟 Support

If you found this tool helpful in your interview prep, please give it a ⭐️ on GitHub! It helps others discover the project.

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages