A diagram from the files you already have
Plotwork reads 32 formats, from Terraform and Kubernetes to SQL, OpenAPI and a git log, and draws each as a finished diagram: typed boxes, product icons, labelled lines. No hand-drawn boxes.
Infrastructure
Containers
Databases
APIs and events
Architecture
Pipelines
Data and history
Run: plotwork generate --source infra22 nodes, 21 connections
Every format, and the diagram it becomes
One command, or one call from an agent with import_source. Anything left out is reported, with its line in your file.
Infrastructure
- Terraform*.tf *.tfvars
plotwork generate --source infra - Terraform planshow -json
plotwork import-source terraform-plan plan.json - Bicep*.bicep
plotwork generate --source infra-bicep - ARM templatesazuredeploy.json
plotwork generate --source infra-arm - PulumiPulumi.yaml
plotwork generate --source infra-pulumi - CloudFormationtemplate.yaml
plotwork generate --source infra-aws - AWS CDKcdk.out/
plotwork generate --source infra-cdk - Serverless Frameworkserverless.yml
plotwork import-source serverless serverless.yml
Containers
- Docker Composecompose.yaml
plotwork import-source compose compose.yaml - DockerfileDockerfile
plotwork import-source dockerfile Dockerfile - Kubernetesmanifests
plotwork generate --source cluster - HelmChart.yaml
plotwork generate --source helm-chart - Kustomizekustomization.yaml
plotwork generate --source kustomize - nginxnginx.conf
plotwork import-source nginx nginx.conf
Databases
- SQL*.sql
plotwork generate --source database - Prismaschema.prisma
plotwork import-source prisma schema.prisma - Drizzleschema.ts
plotwork import-source drizzle schema.ts
APIs and events
- OpenAPIopenapi.json
plotwork generate --source api - GraphQLschema.graphql
plotwork import-source graphql schema.graphql - Protocol Buffers*.proto
plotwork import-source protobuf checkout.proto - AsyncAPI*.asyncapi.yaml
plotwork generate --source events
Architecture
- Backstagecatalog-info.yaml
plotwork generate --source catalog - Structurizrworkspace.dsl
plotwork generate --source c4-containers - JavaScript workspacespackage.json
plotwork import-source workspaces package.json
Pipelines
- GitHub Actionsworkflows/*.yml
plotwork generate --source ci - GitLab CI/CD.gitlab-ci.yml
plotwork generate --source ci-gitlab - Azure Pipelinesazure-pipelines.yml
plotwork generate --source ci-azure - dbtmanifest.json
plotwork import-source dbt manifest.json
Data and history
- CSV*.csv *.tsv
plotwork generate --source shipments - JSON*.json
plotwork import-source json latency.json - Folder treetree output
plotwork import-source tree tree.txt - Git historygit log
plotwork import-source git-log git-log.txt
Coming from Mermaid?
Every Mermaid kind Plotwork draws converts in one call, and every loss is reported.