<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: abhishek singh</title>
    <description>The latest articles on DEV Community by abhishek singh (@abhishek_singh_fb57086f27).</description>
    <link>https://dev.to/abhishek_singh_fb57086f27</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3968982%2F6536508e-d858-4c9c-aeaf-3f9d19dca795.png</url>
      <title>DEV Community: abhishek singh</title>
      <link>https://dev.to/abhishek_singh_fb57086f27</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/abhishek_singh_fb57086f27"/>
    <language>en</language>
    <item>
      <title>I built a cloud architecture tool that generates diagrams, costs, and runbooks from plain English — here's how</title>
      <dc:creator>abhishek singh</dc:creator>
      <pubDate>Fri, 05 Jun 2026 01:49:41 +0000</pubDate>
      <link>https://dev.to/abhishek_singh_fb57086f27/i-built-a-cloud-architecture-tool-that-generates-diagrams-costs-and-runbooks-from-plain-english--3dca</link>
      <guid>https://dev.to/abhishek_singh_fb57086f27/i-built-a-cloud-architecture-tool-that-generates-diagrams-costs-and-runbooks-from-plain-english--3dca</guid>
      <description>&lt;p&gt;I built a cloud architecture tool that generates diagrams, costs, and &lt;br&gt;
runbooks from plain English — here's how&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8mgl25tkbhg87am2lmpg.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8mgl25tkbhg87am2lmpg.jpg" alt=" " width="798" height="198"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem I kept hitting
&lt;/h2&gt;

&lt;p&gt;Every time I sat down to design a cloud system, I ended up doing this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open architecture drawing tool&lt;/li&gt;
&lt;li&gt;Add an EC2 node&lt;/li&gt;
&lt;li&gt;Think: &lt;em&gt;what's the SLA on EC2 again?&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Open a new tab → AWS docs&lt;/li&gt;
&lt;li&gt;Think: &lt;em&gt;wait, should this be Fargate instead?&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Open another tab&lt;/li&gt;
&lt;li&gt;Think: &lt;em&gt;what are the Lambda concurrency limits?&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Open another tab&lt;/li&gt;
&lt;li&gt;Think: &lt;em&gt;how much is this going to cost at medium scale?&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Open another tab&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;By the time I had answers, I'd lost the thread of what I was designing. &lt;br&gt;
The diagram sat there with 3 boxes and 2 arrows while I was buried in &lt;br&gt;
documentation.&lt;/p&gt;

&lt;p&gt;Then I'd share the diagram in a design review. The first question: &lt;br&gt;
&lt;em&gt;"What's the SLA on RDS Multi-AZ?"&lt;/em&gt; Back to the tabs.&lt;/p&gt;

&lt;p&gt;I got tired of it. So I built &lt;strong&gt;Potato&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Potato is
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://abhisheksingh011.github.io/potato/" rel="noopener noreferrer"&gt;&lt;strong&gt;Live demo →&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://github.com/abhisheksingh011/potato" rel="noopener noreferrer"&gt;&lt;strong&gt;GitHub →&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzr7iaxa3rrljtpyb7ri7.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzr7iaxa3rrljtpyb7ri7.jpg" alt=" " width="800" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Potato is a free, open-source Cloud Architecture Studio where every &lt;br&gt;
node already knows the answer to the questions you'd normally open 10 &lt;br&gt;
tabs to find.&lt;/p&gt;

&lt;p&gt;Hover over any service on the canvas and you get:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What it does&lt;/strong&gt; — one crisp sentence, no marketing copy&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SLA&lt;/strong&gt; — exact uptime commitment (99.9%? 99.95%? 99.99%? it varies 
more than you'd think)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hard limits&lt;/strong&gt; — Lambda's 15-minute execution cap, DynamoDB's 400KB 
item limit, API Gateway's 10MB payload maximum&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Common production pitfalls&lt;/strong&gt; — the mistakes that bite teams at 
scale, not in a hello-world&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;When to use it (and when not to)&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Monthly cost estimates&lt;/strong&gt; — Small / Medium / Large workload 
breakdowns, per service, totalled across the whole diagram&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;52 AWS, Azure, and GCP services documented. 12 production-ready AWS &lt;br&gt;
templates (VPC + ECS Fargate, serverless API, multi-region &lt;br&gt;
active-active, data pipeline, and more) that load in one click.&lt;/p&gt;

&lt;p&gt;No account. No login. No subscription ,with &lt;br&gt;
zero network dependencies.&lt;/p&gt;




&lt;h2&gt;
  
  
  The AI workflow — how it actually works
&lt;/h2&gt;

&lt;p&gt;This is the part people ask about most.&lt;/p&gt;

&lt;p&gt;The "AI Import" feature doesn't call any AI API itself. Instead, it &lt;br&gt;
gives you a prompt to paste into whatever LLM you already use — Claude, &lt;br&gt;
ChatGPT, Gemini, anything. The LLM returns a structured JSON block. &lt;br&gt;
You paste that JSON into Potato. Your diagram builds itself.&lt;/p&gt;

&lt;p&gt;Getting this prompt to return &lt;strong&gt;reliable, parseable JSON&lt;/strong&gt; across &lt;br&gt;
Claude, ChatGPT, and Gemini took the most iteration of anything in the &lt;br&gt;
project. The key lessons:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Schema specificity beats natural language instructions.&lt;/strong&gt;&lt;br&gt;
The more concrete the JSON schema, the fewer hallucinated fields you &lt;br&gt;
get. If you say "return a JSON object representing the architecture," &lt;br&gt;
you get something different every time. If you give the exact shape &lt;br&gt;
with typed examples, you get consistent output.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. "Act as" framing changes the quality of architectural decisions.&lt;/strong&gt;&lt;br&gt;
Asking an LLM to act as a Principal Solutions Architect (rather than &lt;br&gt;
just "design this system") produces meaningfully better service &lt;br&gt;
selection. It uses RDS Multi-AZ instead of a single instance. It adds &lt;br&gt;
a NAT Gateway. It puts the right things in private subnets.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Let the LLM place nodes; don't ask for pixel-perfect layouts.&lt;/strong&gt;&lt;br&gt;
The JSON includes &lt;code&gt;x&lt;/code&gt; / &lt;code&gt;y&lt;/code&gt; coordinates. Early versions tried to have &lt;br&gt;
the LLM produce a pretty layout. This never worked reliably. The better &lt;br&gt;
approach: accept any layout from the LLM, then auto-arrange or &lt;br&gt;
manually drag. The architectural structure matters; the pixel positions &lt;br&gt;
don't.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Validate after paste, not before.&lt;/strong&gt;&lt;br&gt;
Rather than trying to validate the JSON mid-prompt, I let the LLM &lt;br&gt;
return what it returns and validate on import. Unknown node types fall &lt;br&gt;
back to a generic icon. Missing fields get defaults. This makes the &lt;br&gt;
feature tolerant of slightly imperfect LLM output without breaking.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj8go7vth6xawwdedtywa.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj8go7vth6xawwdedtywa.jpg" alt=" " width="798" height="198"&gt;&lt;/a&gt;&lt;br&gt;
The result: describe a system in plain English, get a wired diagram &lt;br&gt;
with 20–40 nodes in about 15 seconds. Then hit &lt;strong&gt;Play&lt;/strong&gt; and the &lt;br&gt;
diagram narrates itself step by step.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's next
&lt;/h2&gt;

&lt;p&gt;A few things I want to add:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;[ ] &lt;strong&gt;Terraform / CDK export&lt;/strong&gt; — generate IaC stubs from the diagram&lt;/li&gt;
&lt;li&gt;[ ] &lt;strong&gt;More service icons&lt;/strong&gt; — Kubernetes, Kafka, Snowflake, Databricks&lt;/li&gt;
&lt;li&gt;[ ] &lt;strong&gt;Diff mode&lt;/strong&gt; — compare two architecture versions visually&lt;/li&gt;
&lt;li&gt;[ ] &lt;strong&gt;Team sharing&lt;/strong&gt; — a lightweight URL-based share that encodes 
  the diagram state&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://github.com/abhisheksingh011/potato" rel="noopener noreferrer"&gt;View on GitHub →&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you try it, I'd genuinely like to know what you think — especially &lt;br&gt;
if you're a solutions architect or work in DevOps and have opinions &lt;br&gt;
about what's missing from the knowledge base.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>aws</category>
      <category>azure</category>
      <category>gcp</category>
    </item>
  </channel>
</rss>
