Quickstart
Build a small web app on the canvas, watch a request travel through it, and fix the first overload you meet. About five minutes, no account needed.
You will build the smallest real request path: a client asks a backend for something, and the backend reads a database to answer.
Skip the building: open this diagram in the editor
1. Open the editor#
On the home page, press Create Diagram. A window lists any diagrams saved on this device; press New diagram to start a blank canvas. There is no sign-up step — the whole build-and-play loop works as a guest.
2. Add three components#
The Components drawer on the left holds every component type, grouped by what it does. Drag Client (under Clients & Apps), Backend (under Compute) and Database (under Data & Storage) onto the canvas. The search box at the top of the drawer finds a component by name or by what it does.
3. Connect them#
Drag from the edge of the Client onto the Backend to draw a connection, then from the Backend to the Database. The direction you drag in does not change how Play walks the diagram — a request goes out along a connection and the response comes back the same way.
4. Set the numbers#
Each component card shows its settings. Click a value to edit it. Set the Client’s activeUsers to 150 and leave the Backend at its default requestsPerSec of 100.
The Script panel on the right shows the same diagram as JSON and stays in sync both ways: edit a value on the canvas and it changes in the JSON; edit the JSON and the canvas follows. Invalid JSON is explained inline rather than breaking anything.
You will already see a red dot on the Backend. Hover it and it reads request-rate capacity: 150% — more traffic than the Backend is sized for. The dot is explained in capacity and attacks.
5. Press Play in Rule-based mode#
- In the top-right of the toolbar, switch Default to Rule-based.
- Open the bottom panel with View → Bottom panel and choose the Console tab.
- Press Play. A marker travels from the Client to the Backend and on to the Database, a response comes back, and the Console narrates every step.
Among the lines you will see a warning that the Backend is OVERLOADED — 150% of capacity. Play loops until you press Stop.
6. Fix the overload#
Raise the Backend’s requestsPerSec to 300. The dot turns green and the warning disappears on the next lap. That is the whole loop: describe the traffic, see what it breaks, change the design, look again. To handle more users with several backends instead, try the Load-Balanced API template.
Open the Load-Balanced API template
7. Save it#
Press Ctrl+S (or Cmd+S). The diagram is saved on your device and appears in My Diagrams next time. Signed-in users can also sync it to the cloud, publish a read-only link, or invite collaborators — see saving, sharing and export.
What to read next#
- Components and connections — every component type and what its settings mean.
- How playback works — exactly what Play does, hop by hop.
- The terminal — build a whole architecture by typing it:
add client web activeUsers=150
add backend api
add database db
connect web -> api -> db
mode rule
playLast updated . Something unclear or out of date? Tell us.