What is Schematify?
A visual tool for exploring systems of entities and their relationships
Schematify is a visual tool for exploring systems of entities and their relationships. The core idea is simple: you define the model, and Schematify lays out the graph.
A Schematify graph is a structured document describing your system’s components, how they connect, and their current state. Schematify renders that source as an interactive graph without manual canvas layout.
Because the graph is source-defined, you can edit, generate, and review it like any other structured file.
Start with the structured editor, then use the CLI, Scriptable Graphs for TypeScript generation, or AI agent skills that teach agents to use those tools.
This approach handles hundreds of nodes, deep hierarchies, cross-cutting relationships, and live status in a single navigable view.
What can you visualise?
Any system that has entities and relationships between them. Common use cases in software infrastructure:
- Service architectures and microservice maps
- Database schemas and their connections
- Deployment topologies across environments
- Kubernetes clusters, pods, and services
- Network diagrams and dependency graphs
The data model is general purpose. Organisational charts, supply chains, logistics networks, process flows. If it has structure and state, Schematify can render it.
Defining a graph
Schematify stores graphs as JSON documents. You can create them in several ways.
Write it by hand
Create a graph in the Document Manager’s structured editor. You can also author JSON or YAML locally and push it with the CLI. These approaches work well for one-off models and for learning the document format.
TypeScript scripts (the CLI runner)
The more powerful path is a TypeScript script that builds and publishes your graph in code. Write a script that queries the sources already describing your system (internal APIs, databases, cloud provider APIs, infrastructure tooling), assembles the graph from live data, and pushes it. Run it from CI or on a schedule and the graph stays current on its own.
Scripts can also stream live updates onto a published graph: node status, metrics, or labels pushed continuously as the underlying system changes. Scripting has its own section covering this in depth.
AI agent generation
Install Schematify’s agent skills to teach a supported AI agent how to generate graph scripts and use ordinary CLI commands. An agent can inspect code or documentation, build a graph, validate it, and publish it. See AI Integration.
Key concepts
Nodes
Nodes are the entities in your graph. Each node has a label, a type, and an optional status.
Attributes
Attributes are key-value metadata stored on nodes. Render styles and status bindings can read these values.
Channels
Channels declare live values that a publisher can update without replacing the graph document. Render styles and status bindings can read channel values.
Hierarchy
Nodes exist in a tree structure with parent-child relationships. A “Kubernetes Cluster” node might contain “Namespace” nodes, which contain “Pod” nodes. Groups can be expanded and collapsed to manage complexity.
Relations
On top of the hierarchy, nodes can have cross-cutting connections. A service node in one branch can link to a database node in a completely different branch, letting you see both the tree structure and the web of connections at once.
Status
Nodes can display live or literal status as coloured badges. Each status definition controls its priority and whether it bubbles through groups. The base critical, alert, and warning statuses bubble, so a problem in a collapsed branch remains visible on its parent.
Filters
Five filter types give precise control over what’s visible: isolate specific nodes, exclude noise, reveal hidden connections, or progressively build the exact view you need.
Search
A full DSL queries node labels, types, attributes, and literal status values. You can turn a valid search into a smart filter.
Bookmarks
Save the current filters and group expansion state, then restore that view later. Bookmarks are stored per graph in your browser and do not sync across browsers or devices.
What’s next
To get hands-on quickly, the Quickstart walks you through loading a graph and using the core features in about five minutes. For a deeper look at each feature, see the Graph Viewer. For AI-powered generation, see AI Integration.