Build it your way
Drag components onto the canvas, edit the JSON beside it, or type commands into the built-in terminal. Every change shows up in all three, and a whole script is a single undo step.
Meet the terminalVisual architecture design
Drag components onto a canvas, connect them, and watch an animated visualization of request flow — with a JSON panel that stays in sync as you edit. Built for sketching and pitching an architecture, not deploying one.
Create DiagramNo sign-up required to start.
Everything you need to design a system and test the idea before you build it.
Drag components onto the canvas, edit the JSON beside it, or type commands into the built-in terminal. Every change shows up in all three, and a whole script is a single undo step.
Meet the terminalTell each client how many users it has and give every component a capacity. Dots on the canvas turn green, amber or red the moment you change a number, and Rule-based playback narrates which component gives out first.
See how playback worksNine starter architectures, from a three-tier web app to a smart door. Then switch a client to a DDoS, SQL injection, stolen session or crawler and see which defence holds.
Read about attack scenariosThen test it against
A flood of requests. A rate limit trims it down to what the system can serve, and a per-source check catches a flood that comes from too few machines.
Publish a read-only link anyone can open and play, with no account needed to view it. Or invite teammates as editors or viewers and work on the same diagram live.
How sharing worksExport JSON or a PNG, record a GIF or video of a walkthrough, or download a starter project in TypeScript, C#, Python or Go.
All export formatsimport express from 'express';
import { apiRouter } from './backends/api';
// Diagram topology (from your Diagravo diagram):
// api -> db
// api -> cache
const app = express();
app.use('/api', apiRouter);
app.get('/', (req, res) => {
res.json({
message: 'Diagravo export running',
routes: ["/api"],using DiagravoExport.Backends;
// Diagram topology (from your Diagravo diagram):
// api -> db
// api -> cache
var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();
Api.Map(app);
app.MapGet("/", () => Results.Ok(new { message = "Diagravo export running", routes = new[] { "/api" } }));
Console.WriteLine("Routes:");
Console.WriteLine(" /api");from fastapi import FastAPI
from backends.api import router as api_router
# Diagram topology (from your Diagravo diagram):
# api -> db
# api -> cache
app = FastAPI()
app.include_router(api_router, prefix="/api")
@app.get("/")
def read_root():
return {"message": "Diagravo export running", "routes": ["/api"]}
package main
import (
"encoding/json"
"fmt"
"log"
"net/http"
"os"
"diagravo-export/backends"
)
// Diagram topology (from your Diagravo diagram):
// api -> db
// api -> cacheTypeScript (Express) — one file per component, wired together, with the dependency list and a README.
Web and cloud, embedded and industrial, physical access and signal electronics — nine families, each with its own settings.
Ctrl+Z steps back through every change, and a whole terminal script is a single undo step.
Press Ctrl+K and type what you want to do — play, export, open a template.
Box related components together, or create up to twenty identical copies in one go.
Swap any component type’s icon for your own image; shared links keep it.
Record a Rule-based walkthrough as an animated GIF or a video for a README or a slide.
Unsaved work is offered back after a refresh or a crash, and diagrams are saved on your device.
Import a diagram from a file or export it, with friendly errors instead of crashes on a typo.
New here? The quickstart takes about five minutes, and the docs explain how every part behaves.
Start free, with no account. Pro is open for when you share diagrams professionally. Pay yearly and save about 27%.
$0
$9/mo
$29/mo
No. The whole canvas, JSON editing, and flow animation loop works as a guest with zero backend calls, and your diagrams are saved on your device. You only need an account to sync diagrams to the cloud, publish a share link, or invite collaborators.
No — Diagravo is a prototyping and communication tool, not an IaC tool. Nothing you build here deploys or provisions anything real.
No — it's an illustration, not a load test. Default mode animates request direction at a constant speed. Rule-based mode walks your diagram hop by hop and flags components whose settings would be overloaded by the traffic you described, but it does not model real latency or failures. The docs explain exactly what it does.
Only you, unless you click Publish — which creates a public, unauthenticated link. Anyone with that link can view (read-only). Don’t publish anything confidential.
Yes. The Free plan is free forever and needs no account to start. Pro adds more cloud storage, no watermark, the starter-code download, custom icons and invitations; Team is planned. The pricing page shows exactly what each includes.
Yes. JSON and PNG are free, and so are GIF and video (with a small watermark on the free plan). The starter-project code in TypeScript, C#, Python and Go is part of Pro.