Drag-and-drop real AWS services, wire them together, and simulate live traffic. Then inject faults and watch failures cascade through your architecture in real time. Export to CloudFormation or Terraform with auto-inferred IAM in one click. AI Design Doctor grades your architecture and catches anti-patterns. Collaborate in real time with live cursors. Tackle 10 architecture challenges with automated validation. No AWS account needed. Runs entirely in your browser.
Your AI editor just got superpowers for distributed systems design. I've shipped a remote MCP server that connects Claude, Cursor, VS Code, OpenCode, and Windsurf directly to your Cascode account over OAuth 2.1. No API keys. No copy-paste. Just your AI editor talking natively to your diagrams. **What's new in 0.8.0:** **Proper auth, done right** OAuth 2.1 with PKCE and dynamic client registration. Per-user token scoping and audience-bound access tokens mean your diagrams stay yours. **Five MCP tools out of the box** list, get, import, export, and delete diagrams straight from your editor. Ask your AI assistant to pull up your architecture, tweak it, and push it back. **Terraform CloudFormation round-trips** this is the big one. Convert between formats while preserving every node and edge. Infrastructure-as-code finally has a format-agnostic home. **One-click install for Cursor and VS Code** CLI for Claude Code and OpenCode. --- Cascode is an interactive playground for distributed systems build AWS architectures, simulate message flows, inject failures, and develop real production intuition. 0.8.0 is the bridge between visual architecture design and the AI-native workflows engineers actually live in. Try it at cascode.uk would love to hear how you're using it in the comments!
Cascode puts you in a live browser canvas where you assemble real AWS architectures, watch actual message flows run through them, and then deliberately kill nodes to see what cascades. The core idea is that you learn resilience by feeling the difference between a system that holds and one that falls apart, not by memorising diagrams.
Most system design education stops at theory. Cascode makes failure the teacher. When a node dies and you watch the downstream effects ripple through your architecture in real time, that mental model sticks in a way that no diagram ever could. You build intuition for why things break, which is exactly what gets tested when production goes wrong
Your roadmap mentions exporting to CloudFormation/Terraform with auto-inferred IAM. In practice, how do you infer permissions from the diagram and wiring, and how do you handle the tricky cases (least privilege vs usability, wildcard creep, cross-service actions that are easy to miss)?
@curiouskitty The inference works from the edge topology of your diagram. Each AWS service has a definition that encodes its IAM characteristics, and when you wire two services together the engine looks up the required actions for that specific pairing and scopes them to generated ARNs rather than wildcards. A validation pass then flags anything overly broad. For the tricky cases, cross-service permissions and resource policies, those get handled automatically during CloudFormation and Terraform export. Service-linked roles and some of the deeper edge cases are still on my list though, it's early days.
The idea of having a dedicated space just to build and break code without wrecking my local environment is super appealing. I can definitely see myself using this as a sandbox to test out messy API integrations before wiring them up in my actual app. I would love to hear how you are handling state management under the hood.
@y_taka That's exactly the use case I built it for! Messy experimentation without consequences. For state management, I keep it intentionally lightweight: Zustand for global state like node selection and multi-page diagram snapshots, React Flow v12 handles the canvas internals, and React Context for scoped things like collaboration cursors. Persistence is two-tier with a Cloudflare D1 backend and localStorage as fallback, both debounced.
Still early days and a lot more planned around state replay and snapshots!
Report
The "make failure the teacher" approach is exactly how deep technical intuition gets built — and it's radically underused in professional education.
I've been thinking about this a lot designing my Excel for Financial Modelling course on Udemy (https://www.udemy.com/course/exc...). The courses that stick are the ones where you build a model that breaks — circular references that crash the file, linked workbooks that lose their source, sensitivity tables that return errors. Working through the failure is what turns someone from a user into someone who actually understands the tool.
Cascode is applying this to infrastructure in a really direct way. The live canvas + deliberate node killing is a clever mechanism. Most cloud certifications test whether you can recognize a diagram, not whether you understand why a system fails. This closes that gap. Congrats on the launch.
This feels super useful, especially for people preparing for system design interviews or thinking about resilience. How do you decide which failure scenarios to simulate?
@uxpinjack Thanks! The simulation runs on a 500ms tick with fault types like crash, timeout, and throttle. I focused on the failure modes that come up most in real production incidents from my experience and community discussions: service crashes, timeouts under load, throttling from capacity limits, and crucially the cascading effects of each. Failures propagate downstream via BFS traversal and backpressure propagates upstream, so as you can actually watch an architecture unravel in real time it almost recreates the feeling!
Lots more depth planned: network partitions, probabilistic error rates, and more it's still early days. Would love to hear which scenarios would be most useful for you!
Cascode
Product Hunt
Cascode
@curiouskitty The inference works from the edge topology of your diagram. Each AWS service has a definition that encodes its IAM characteristics, and when you wire two services together the engine looks up the required actions for that specific pairing and scopes them to generated ARNs rather than wildcards. A validation pass then flags anything overly broad. For the tricky cases, cross-service permissions and resource policies, those get handled automatically during CloudFormation and Terraform export. Service-linked roles and some of the deeper edge cases are still on my list though, it's early days.
Okan
The idea of having a dedicated space just to build and break code without wrecking my local environment is super appealing. I can definitely see myself using this as a sandbox to test out messy API integrations before wiring them up in my actual app. I would love to hear how you are handling state management under the hood.
Cascode
@y_taka That's exactly the use case I built it for! Messy experimentation without consequences. For state management, I keep it intentionally lightweight: Zustand for global state like node selection and multi-page diagram snapshots, React Flow v12 handles the canvas internals, and React Context for scoped things like collaboration cursors. Persistence is two-tier with a Cloudflare D1 backend and localStorage as fallback, both debounced.
Still early days and a lot more planned around state replay and snapshots!
The "make failure the teacher" approach is exactly how deep technical intuition gets built — and it's radically underused in professional education.
I've been thinking about this a lot designing my Excel for Financial Modelling course on Udemy (https://www.udemy.com/course/exc...). The courses that stick are the ones where you build a model that breaks — circular references that crash the file, linked workbooks that lose their source, sensitivity tables that return errors. Working through the failure is what turns someone from a user into someone who actually understands the tool.
Cascode is applying this to infrastructure in a really direct way. The live canvas + deliberate node killing is a clever mechanism. Most cloud certifications test whether you can recognize a diagram, not whether you understand why a system fails. This closes that gap. Congrats on the launch.
UXPin Merge
This feels super useful, especially for people preparing for system design interviews or thinking about resilience. How do you decide which failure scenarios to simulate?
Cascode
@uxpinjack Thanks! The simulation runs on a 500ms tick with fault types like crash, timeout, and throttle. I focused on the failure modes that come up most in real production incidents from my experience and community discussions: service crashes, timeouts under load, throttling from capacity limits, and crucially the cascading effects of each. Failures propagate downstream via BFS traversal and backpressure propagates upstream, so as you can actually watch an architecture unravel in real time it almost recreates the feeling!
Lots more depth planned: network partitions, probabilistic error rates, and more it's still early days. Would love to hear which scenarios would be most useful for you!
Cascode
Watch a demo for Multi-User real time collab!
Link: https://x.com/mxnyapps/status/2043789858095710509?s=20