a collection of patterns for diagrams that can be reused in different projects
Project description
diagrams-patterns
- diagrams should only used for managing the basic shapes of the cloud components
- but there are standard patterns usually used in cloud architecture, we don't need to draw them from scratch
- e.g. VPC with public/private subnets, NAT gateway, etc.
diagrams-patterns is a collection of patterns for diagrams that can be reused in different projects.
Features
- aws vpc, subnets with styles
- aws overlapping az on subnets
- calculate the position based on the number of az and subnets
- store and reuse the calculated position
- aws grid subnets with az
use 'anchor', a hidden node, to align the subnets- not really work
- dsl investigate
- dsl 2 py 2 diagrams (refer to d2)
Roadmap
Currently, the diagrams-patterns and diagrams-exporters are built as 'diagrams'-extensions. But since the diagrams is inactive, introducing new tools is a necessary step, e.g. d2.
At that time, the diagrams-patterns should be a standalone tool, which provide a standard DSL to describe the common patterns in cloud architecture (or other kinds of diagrams). Then, you can translate the DSL to different tools, e.g. diagrams, d2, etc.
The diagrams-exporters plays another role to facilitate with productive tools, e.g. terraform, aws cli, etc. It read the metadata, convert to DSL, then generate the diagrams.
A possible structure is:
flowchart BT
subgraph diagram-exporters
terraform-exporter
awscli-exporter
kubectl-exporter
end
subgraph diagrams-patterns
subgraph common-patterns
c4-pattern
layer-arch-pattern
end
subgraph cloud-patterns
aws-pattern
azure-pattern
end
subgraph dsl
dsl-parser
dsl-to-diagrams
dsl-to-d2
dsl-to-mermaid
end
end
diagrams-patterns --> diagram-exporters
diagrams --> diagrams-patterns
d2 --> diagrams-patterns
plantuml --> diagrams-patterns
graphviz --> diagrams
graphviz --> d2
plantuml
Reference
-
graphviz & dot
-
d2
-
read tfstate and generate graph
-
read aws cli and generate graph
-
other terraform interesting tools
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for diagrams_patterns-0.1.0a1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | b1dd9283e627850cd63b5a5fecb7ea33550ca375fb6ab6d19db0c7ebb5b325e4 |
|
MD5 | d57cadeae2527fb3a24b3646b161cfff |
|
BLAKE2b-256 | fceba3506413aa0ddd780338b393193ea0518746531534887e717e5f161cfbc3 |
Hashes for diagrams_patterns-0.1.0a1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf17be3f8140e1c6e8296caaea68fc94bf04adba416e3c0a95b750adfb4f039c |
|
MD5 | 4036280566334027e7978cec0606af45 |
|
BLAKE2b-256 | 763321c6b3029f8b000a3385e07d0eaf593d8e4da83ed28dc258b2699253dca6 |