Open schema · Free to use

zeema

Architecture as data

One schema that architects and AI agents both speak.

Stop drawing your architecture. Commit it.

Follow one edge from the canvas to a merged pull request.

stripe-paymentscanvas
Payment servicecontainer-service
Card networkcard-network
https · sync
Edgepayment-service → card-networkProtocolhttpsModesync
Drag from one node to another

Draw it once. Get data for free.

The canvas is only the input. What you keep is a typed design that tools, rules, and agents can all read.

A canvas that writes YAML

Place, connect, set the contract; every change lands in the file.

A typed catalogue

2,366 components across AWS, Azure, GCP, Cloudflare, Kubernetes and more.

Findings before production

42 rules flag risk early; they advise, never block.

Groups, notes, tidy edges

Regions and zones with tints, pinned notes, right-angle routing.

Clone, edit, publish

Clone any public design; readers see the last release until you publish.

Real systems to start from

Netflix, Stripe, Uber, YouTube, drawn and checked by the same engine.

For Developers

This is the whole design

One YAML file, checked against the Zeema JSON Schema. Each node names a catalogue component, which brings its kind; each edge carries its contract. People, CI and agents all read the same file.

architecture/uber-dispatch.zeema.yaml
schemaVersion: "1"
type: "design"
id: "uber-dispatch"
nodes:
  - id: "rtapi"
    component: "websocket-gateway"
  - id: "dispatch"
    component: "container-service"
edges:
  - from: "rtapi"
    to: "dispatch"
    protocol: "tchannel"
    mode: "sync"
    timeoutMs: 500

Architect to Agent. Agent to Architect.

Because your architecture is data, AI agents can read it, build from it, and tell you when reality drifts. The design becomes a contract that humans and agents both follow.

Architect uber-dispatch.zeema.yaml
schemaVersion: "1"
type: "design"
id: "uber-dispatch"
nodes:
  - id: "dispatch"
    component: "container-service"
  - id: "geo-index"
    component: "geo-cell-index"
edges:
  - from: "dispatch"
    to: "geo-index"
    protocol: "tchannel"
    mode: "sync"
Committed
AI Agent any coding agent
$ agent run "implement dispatch"
▸ reading uber-dispatch.zeema.yaml
✓ 2 nodes, 1 edge, valid against the schema
▸ contract: dispatch → geo-index, tchannel, sync
+ services/dispatch/geo-index-client.js
+ test: dispatch calls geo-index synchronously
✓ code matches the design
1

Design as data

You define the design once, in one YAML file.

2

Agent reads the contract

Any agent loads it: components, edges, contracts.

3

Code matches architecture

The agent builds exactly what was designed, and opens a PR.

Questions developers ask

How is this different from Mermaid, PlantUML, or Structurizr?

Diagram-as-code tools describe a picture: boxes, arrows, layout. Zeema describes the system itself. Every node is a catalogue component with a kind, edges carry a contract (protocol, mode, timeout, retry policy, idempotency), and rules check the design. Diagrams are one view of the data: the canvas draws it, and zeema render exports SVG or Mermaid.

Is it free?

Yes. The schema, the engine and the CLI (npm i -g zeema) are open source, and the canvas is free to use.

Do I need an account?

Not to explore. Public designs open read-only. Sign in with GitHub when you want to create a design, or clone one and keep your edits.

Where does my design live?

On Zeema, public or private. A new design starts private; clone a public one to start from it, and publish a release when it is ready. It is also yours as files: export a zip with the YAML and its layout, commit it next to your code, run zeema lint in CI, and import it back whenever you like.

Which AI agents can use it?

Any agent that can read a file. A design is plain YAML with a JSON Schema, and llms.txt indexes every kind, component and rule as pages an agent can fetch. Coding agents load the design as context, check their work against it, and propose changes as diffs. Agents that speak MCP, such as Claude Code, Cursor and Copilot, can also run the server built into the CLI (npm i -g zeema, then zeema mcp) to lint, read and render designs and search the catalogue on your machine. See the MCP guide.

Is it tied to one cloud?

No. The catalogue covers AWS, Azure, Google Cloud, Cloudflare, Kubernetes, Oracle Cloud, IBM Cloud, Alibaba Cloud, DigitalOcean, OpenStack and Outscale, plus vendor-neutral products such as Kafka and Redis. Each component maps to a kind like worker or object-store, so a design means the same thing whichever vendor you pick.

Stop drawing. Start committing.

Open a public design without an account, or start your own on a blank canvas.